/*
 * Copyright (c) 2021 HiSilicon (Shanghai) Technologies CO., LIMITED.
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */

#ifndef __IMX415_CMOS_EX_H_
#define __IMX415_CMOS_EX_H_

#include "hi_awb_comm.h"

#ifdef __cplusplus
#if __cplusplus
extern "C" {
#endif
#endif

static const ISP_CMOS_LCAC_S g_stIspLCac = {
    1, /* bEnable */
    0, /* enOpMode */
    0, /* VarThr */
    {1500, 1500, 0}, /* au16RLumaThd */
    {1500, 1500, 0}, /* au16GLumaThd */
    {4095, 1500, 0}, /* au16BLumaThd */
    {3200, 1500, 0}, /* au16YLumaThd */
    {-50, -50, -50}, /* as16CbCrRatio */
    30, /* u16PurpleDetRange */
    {
        0, /* u8DePurpleCrStr */
        3  /* u8DePurpleCbStr */
    },
    {
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }, /* u8DePurpleCrStr */
        { 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3, 3 }  /* u8DePurpleCbStr */
    }
};

/* Piris attr */
static ISP_PIRIS_ATTR_S g_gstPirisAttr = {
    0,  /* bStepFNOTableChange */
    1,  /* bZeroIsMax */
    94, /* u16TotalStep */
    62, /* u16StepCount */
    {
        30,  35,  40,  45,  50,  56,  61,  67,  73,  79,  85,  92,  98,  105, 112, 120, 127, 135, 143, 150, 158,
        166, 174, 183, 191, 200, 208, 217, 225, 234, 243, 252, 261, 270, 279, 289, 298, 307, 316, 325, 335, 344,
        353, 362, 372, 381, 390, 399, 408, 417, 426, 435, 444, 453, 462, 470, 478, 486, 493, 500, 506, 512
    },
    ISP_IRIS_F_NO_1_4, /* enMaxIrisFNOTarget */
    ISP_IRIS_F_NO_5_6, /* enMinIrisFNOTarget */
    1,
    512,
    32
};

static const ISP_CMOS_DPC_S g_stCmosDpc = {
    { 0, 0, 0, 152, 220, 220, 220, 220, 220, 220, 152, 152, 152, 152, 152, 152 }, /* au16Strength[16] */
    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 50, 50, 50, 50, 50, 50 },                     /* au16BlendRatio[16] */
};

static const ISP_CMOS_DPC_S g_stCmosDpcWDR = {
    { 0, 0, 0, 152, 220, 220, 220, 220, 220, 220, 152, 152, 152, 152, 152, 152 }, /* au16Strength[16] */
    { 0, 0, 10, 20, 40, 60, 70, 80, 90, 100, 110, 120, 128, 128, 128, 128 },            /* au16BlendRatio[16] */
};

#ifdef CONFIG_HI_ISP_CR_SUPPORT
static const ISP_CMOS_GE_S g_stIspGe = {
    /* For GE */
    1,   /* bEnable */
    9,   /* u8Slope */
    9,   /* u8SensiSlope */
    300, /* u16SensiThr */
    { 300, 300, 300, 300, 310, 310, 310, 310, 320, 320, 320, 320, 330, 330, 330, 330 },
    { 128, 128, 128, 128, 129, 129, 129, 129, 130, 130, 130, 130, 131, 131, 131, 131 },
    { 1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048 }
};

static const ISP_CMOS_GE_S g_stIspWdrGe = {
    /* For GE */
    0,   /* bEnable */
    9,   /* u8Slope */
    9,   /* u8SensiSlope */
    300, /* u16SensiThr */
    { 300, 300, 300, 300, 310, 310, 310, 310, 320, 320, 320, 320, 330, 330, 330, 330 },
    { 128, 128, 128, 128, 129, 129, 129, 129, 130, 130, 130, 130, 131, 131, 131, 131 },
    { 1024, 1024, 1024, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048, 2048 }
};
#endif

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaic = {
    1, /* bEnable */
    /* au8NonDirStr */
    { 64, 64, 64, 80, 160, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255 },
    /* au8NonDirLFDetailEhc */
    { 42, 36, 32, 28, 16, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
    /* au8NonDirHFDetailEhc */
    { 0, 0, 2, 3, 4, 5, 5, 5, 5, 5, 5, 7, 7, 7, 7, 7 },
    /* au8DetailSmoothRange */
    { 1, 1, 1, 1, 1, 1, 3, 4, 5, 5, 7, 7, 7, 7, 7, 7 },
};

static const ISP_CMOS_DEMOSAIC_S g_stIspDemosaicWdr = {
    1,  /* bEnable */
    /* au8NonDirStr */
    { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
    /* au8NonDirLFDetailEhc */
    { 60, 60, 58, 55, 50, 45, 40, 30, 20, 16, 16, 16, 16, 16, 16, 16 },
    /* au8NonDirHFDetailEhc */
    { 0, 0, 1, 2, 2, 3, 3, 3, 3, 4, 4, 5, 5, 5, 5, 5 },
    /* au8DetailSmoothRange */
    { 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 7, 7, 7, 7, 7, 7 },
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspAntiFalseColor = {
    1,                                                    /* bEnable */
    { 10, 10, 8, 8, 7, 7, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 }, /* au8AntiFalseColorThreshold */
    { 8, 8, 8, 8, 7, 7, 7, 6, 6, 6, 5, 4, 3, 2, 1, 0 },   /* au8AntiFalseColorStrength */
};

static const ISP_CMOS_ANTIFALSECOLOR_S g_stIspWdrAntiFalseColor = {
    1,                                                  /* bEnable */
    { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 0 }, /* au8AntiFalseColorThreshold */
    { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 3, 2, 1, 0 }, /* au8AntiFalseColorStrength */
};

/* BAYER NR */
static ISP_CMOS_NOISE_CALIBRATION_S g_stIspNoiseCalibration = {
    8, /* Calibration Lut Num */
    {
        { 100.000000f, 0.049954f, 0.037828f },
        { 200.000000f, 0.098111f, 0.030707f },
        { 400.000000f, 0.181584f, 0.065621f },
        { 800.000000f, 0.325323f, 0.254976f },
        { 1600.000000f, 0.650243f, 0.723975f },
        { 3200.000000f, 1.268702f, 2.947644f },
        { 6400.000000f, 2.458397f, 10.087735f },
        { 12800.000000f, 4.767390f, 34.887684f }
    },
};

static const ISP_CMOS_BAYERNR_S g_stIspBayerNr = {
    1,                                                                  /* bEnable */
    0,                                                                  /* bBnrMonoSensorEn */
    0,                                                                  /* bNrLscEnable */
    96,                                                                 /* u8BnrLscMaxGain */
    256,                                                                /* u16BnrLscCmpStrength */
    { 65, 65, 65, 65, 65, 65, 60, 60, 60, 50, 50, 50, 50, 50, 16, 16 }, /* FineStr */
    {
        { 0, 0, 0, 1, 2, 2, 2, 2, 2, 3, 3, 3, 3, 3, 3, 3 }, /* ChromaStrR */
        { 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2 }, /* ChromaStrGr */
        { 0, 0, 0, 0, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 2, 2 }, /* ChromaStrGb */
        { 0, 0, 0, 1, 2, 2, 2, 2, 1, 3, 3, 3, 3, 3, 3, 3 }  /* ChromaStrB */
    },
    { 0, 0, 0, 0 }, /* WDRFrameStr */
    { 0, 0, 0, 0 }, /* FusionFrameStr */
    {
        { 120, 140, 180, 200, 240, 280, 300, 320, 340, 380, 340, 340, 300, 300, 280, 280 }, /* CoarseStrR */
        { 108, 110, 115, 125, 135, 160, 180, 180, 180, 180, 160, 160, 148, 148, 138, 138 }, /* CoarseStrGR */
        { 108, 110, 115, 125, 135, 160, 180, 180, 180, 180, 160, 160, 148, 148, 138, 138 }, /* CoarseStrGB */
        { 120, 140, 180, 200, 240, 280, 300, 300, 340, 380, 340, 340, 300, 300, 280, 280 }  /* CoarseStrB */
    },
    { 45, 40, 40, 40, 40, 40, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }, /* lutCoringWeight */
    {
        160, 160, 140, 120, 90, 65, 65, 65, 70, 70, 70,  70,  70,  70,  70,  70, /* CoringRatio */
        80,  80,  80,  85,  85, 85, 90, 90, 90, 95, 100, 120, 120, 150, 150, 180, 180
    },
};

static const ISP_CMOS_BAYERNR_S g_stIspBayerNrWdr2To1 = {
    1,                                                                    /* bEnable */
    0,                                                                    /* bBnrMonoSensorEn */
    0,                                                                    /* bNrLscEnable */
    96,                                                                   /* u8BnrLscMaxGain */
    256,                                                                  /* u16BnrLscCmpStrength */
    { 100, 95, 90, 85, 80, 75, 70, 65, 60, 55, 50, 40, 30, 20, 16, 16 },  /* FineStr */
    {
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },  /* ChromaStrR */
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },  /* ChromaStrGr */
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },  /* ChromaStrGb */
        { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 }   /* ChromaStrB */
    },
    { 20, 12, 16, 0 },  /* WDRFrameStr */
    { 20, 12, 0, 0 },   /* FusionCoarseStr */
    {
        { 120, 125, 130, 135, 140, 145, 150, 155, 160, 160, 160, 160, 160, 160, 160, 160 },  /* CoarseStrR */
        { 100, 105, 110, 115, 120, 125, 130, 135, 140, 140, 140, 140, 140, 140, 140, 140 },  /* CoarseStrGR */
        { 100, 105, 110, 115, 120, 125, 130, 135, 140, 140, 140, 140, 140, 140, 140, 140 },  /* CoarseStrGB */
        { 120, 125, 130, 135, 140, 145, 150, 155, 160, 160, 160, 160, 160, 160, 160, 160 },  /* CoarseStrB */
    },
    { 25, 25, 25, 25, 25, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 },  /* lutCoringWeight */
    {
        10,  20,  40,  80,  100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100,
        100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100
    },  /* coring ratio */
};

static const ISP_CMOS_DETAIL_S g_stIspDetail = {
    {
        1, /* bEnable */
        { 256, 256, 200, 170, 150, 100, 60, 60, 60, 80, 80, 80, 80, 50, 50, 100, 100 },
        0, /* enOpType */
        {
            { 100, 140, 160, 160, 180, 180, 160, 140, 120, 100, 100, 100, 100, 100, 100, 100 }, /* au16GlobalGain */
            { 6, 9, 10, 12, 12, 16, 20, 13, 10, 8, 8, 8, 8, 8, 8, 8 },                          /* au16GainLF */
            { 4, 6, 8, 9, 9, 12, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15 },                      /* au16GainHF */
        },
        {
            150, /* u16GlobalGain */
            9,   /* u16GainLF */
            9    /* u16GainHF */
        }
    }
};

static const ISP_CMOS_DETAIL_S g_stIspDetailWdr2To1 = {
    {
        1, /* bEnable */
        { 256, 256, 200, 170, 150, 100, 60, 60, 60, 80, 80, 80, 80, 50, 50, 100, 100 },
        0, /* enOpType */
        {
            { 150, 150, 150, 150, 170, 190, 190, 150, 150, 150, 150, 150, 150, 150, 150, 150 },  /* au16GlobalGain */
            { 9, 9, 9, 9, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 },                                  /* au16GainLF */
            { 9, 9, 9, 9, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12, 12 },                      /* au16GainHF */
        },
        {
            150,  /* u16GlobalGain */
            9,    /* u16GainLF */
            9     /* u16GainHF */
        }
    }
};

static const ISP_CMOS_LDCI_S g_stIspLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    36,

    /* au8HePosWgt */
    { 70, 45, 42, 40, 35, 32, 32, 8, 6, 0, 0, 0, 0, 0, 0, 0 },
    /* au8HePosSigma */
    { 80, 80, 70, 70, 70, 64, 64, 20, 12, 8, 6, 2, 1, 1, 1, 1 },
    /* au8HePosMean */
    { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

    /* au8HeNegWgt */
    { 60, 45, 45, 45, 45, 24, 24, 8, 6, 0, 0, 0, 0, 0, 0, 0 },
    /* au8HeNegSigma */
    { 80, 80, 80, 80, 80, 72, 72, 54, 36, 8, 6, 2, 1, 1, 1, 1 },
    /* au8HeNegMean */
    { 128, 128, 128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 },

    /* au16BlcCtrl */
    { 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }
};

static const ISP_CMOS_LDCI_S g_stIspWdrLdci = {
    /* bEnable */
    1,
    /* u8GaussLPFSigma */
    36,
    /* au8HePosWgt */
    { 16, 16, 16, 12, 8, 4, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
    /* au8HePosSigma */
    { 80, 80, 80, 80, 72, 64, 40, 20, 12, 8, 6, 2, 1, 1, 1, 1 },
    /* au8HePosMean */
    { 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 },

    /* au8HeNegWgt */
    { 64, 64, 64, 48, 32, 16, 8, 0, 0, 0, 0, 0, 0, 0, 0, 0 },
    /* au8HeNegSigma */
    { 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80 },
    /* au8HeNegMean */
    { 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180 },
    /* au16BlcCtrl */
    { 20, 20, 20, 20, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }
};

static const ISP_CMOS_GAMMA_S g_stIspGamma = {
    {
        0,    47,   62,   78,   93,   108,  123,  139,  154,  169,  185,  200,  216,  231,  247,  262,  277,  293,  308,
        324,  339,  355,  370,  386,  401,  417,  432,  448,  463,  479,  494,  509,  525,  540,  556,  571,  586,  602,
        617,  632,  648,  663,  678,  693,  708,  724,  739,  754,  769,  784,  799,  814,  829,  843,  858,  873,  888,
        902,  917,  931,  946,  960,  975,  989,  1003, 1018, 1032, 1046, 1060, 1074, 1088, 1101, 1115, 1129, 1143, 1156,
        1170, 1183, 1196, 1210, 1223, 1236, 1249, 1262, 1275, 1287, 1300, 1313, 1325, 1338, 1350, 1362, 1375, 1387, 1399,
        1411, 1423, 1435, 1446, 1458, 1469, 1481, 1492, 1504, 1515, 1526, 1537, 1548, 1559, 1570, 1581, 1591, 1602, 1613,
        1623, 1633, 1644, 1654, 1664, 1674, 1684, 1694, 1704, 1714, 1723, 1733, 1742, 1752, 1761, 1771, 1780, 1790, 1799,
        1809, 1818, 1827, 1837, 1846, 1855, 1864, 1873, 1881, 1890, 1899, 1907, 1916, 1924, 1932, 1941, 1949, 1957, 1965,
        1973, 1981, 1989, 1997, 2005, 2013, 2020, 2028, 2036, 2043, 2051, 2058, 2065, 2073, 2080, 2087, 2094, 2102, 2109,
        2116, 2123, 2130, 2137, 2144, 2151, 2157, 2164, 2171, 2178, 2185, 2191, 2198, 2205, 2211, 2218, 2224, 2231, 2237,
        2244, 2251, 2257, 2263, 2270, 2276, 2283, 2289, 2295, 2301, 2307, 2313, 2319, 2325, 2331, 2337, 2343, 2349, 2354,
        2360, 2366, 2371, 2377, 2382, 2388, 2393, 2399, 2404, 2409, 2414, 2420, 2425, 2430, 2435, 2440, 2445, 2451, 2456,
        2461, 2465, 2470, 2475, 2480, 2485, 2490, 2495, 2499, 2504, 2509, 2514, 2518, 2523, 2528, 2532, 2537, 2541, 2546,
        2551, 2555, 2560, 2564, 2569, 2573, 2578, 2582, 2587, 2591, 2595, 2600, 2604, 2608, 2613, 2617, 2621, 2625, 2630,
        2634, 2638, 2642, 2646, 2650, 2654, 2658, 2662, 2666, 2669, 2673, 2677, 2681, 2685, 2688, 2692, 2696, 2700, 2703,
        2707, 2710, 2714, 2718, 2721, 2725, 2728, 2732, 2735, 2739, 2742, 2746, 2749, 2752, 2756, 2759, 2763, 2766, 2769,
        2773, 2776, 2779, 2783, 2786, 2789, 2792, 2796, 2799, 2802, 2806, 2809, 2812, 2815, 2819, 2822, 2825, 2828, 2831,
        2835, 2838, 2841, 2844, 2847, 2850, 2853, 2856, 2859, 2862, 2865, 2868, 2871, 2874, 2877, 2880, 2883, 2886, 2889,
        2892, 2895, 2898, 2900, 2903, 2906, 2909, 2912, 2914, 2917, 2920, 2923, 2925, 2928, 2931, 2934, 2936, 2939, 2942,
        2944, 2947, 2950, 2952, 2955, 2958, 2960, 2963, 2966, 2968, 2971, 2974, 2976, 2979, 2981, 2984, 2987, 2989, 2992,
        2995, 2997, 3000, 3002, 3005, 3008, 3010, 3013, 3015, 3018, 3021, 3023, 3026, 3028, 3031, 3033, 3036, 3038, 3041,
        3043, 3046, 3048, 3051, 3053, 3056, 3058, 3061, 3063, 3066, 3068, 3071, 3073, 3075, 3078, 3080, 3083, 3085, 3088,
        3090, 3092, 3095, 3097, 3099, 3102, 3104, 3107, 3109, 3111, 3114, 3116, 3118, 3120, 3123, 3125, 3127, 3130, 3132,
        3134, 3137, 3139, 3141, 3143, 3146, 3148, 3150, 3152, 3155, 3157, 3159, 3161, 3163, 3166, 3168, 3170, 3172, 3174,
        3177, 3179, 3181, 3183, 3185, 3187, 3189, 3191, 3194, 3196, 3198, 3200, 3202, 3204, 3206, 3208, 3210, 3212, 3214,
        3216, 3218, 3220, 3223, 3225, 3227, 3229, 3231, 3233, 3235, 3237, 3239, 3241, 3243, 3245, 3247, 3248, 3250, 3252,
        3254, 3256, 3258, 3260, 3262, 3264, 3266, 3268, 3270, 3272, 3274, 3276, 3278, 3279, 3281, 3283, 3285, 3287, 3289,
        3291, 3293, 3295, 3297, 3298, 3300, 3302, 3304, 3306, 3308, 3310, 3311, 3313, 3315, 3317, 3319, 3320, 3322, 3324,
        3326, 3328, 3329, 3331, 3333, 3335, 3336, 3338, 3340, 3342, 3344, 3345, 3347, 3349, 3350, 3352, 3354, 3356, 3357,
        3359, 3361, 3363, 3364, 3366, 3368, 3369, 3371, 3373, 3375, 3376, 3378, 3380, 3381, 3383, 3385, 3387, 3388, 3390,
        3392, 3393, 3395, 3397, 3399, 3400, 3402, 3404, 3405, 3407, 3409, 3411, 3412, 3414, 3416, 3417, 3419, 3421, 3422,
        3424, 3426, 3427, 3429, 3431, 3432, 3434, 3436, 3437, 3439, 3441, 3442, 3444, 3446, 3447, 3449, 3451, 3452, 3454,
        3455, 3457, 3459, 3460, 3462, 3464, 3465, 3467, 3469, 3470, 3472, 3473, 3475, 3477, 3478, 3480, 3482, 3483, 3485,
        3487, 3488, 3490, 3492, 3493, 3495, 3496, 3498, 3500, 3501, 3503, 3505, 3506, 3508, 3510, 3511, 3513, 3515, 3516,
        3518, 3520, 3521, 3523, 3525, 3526, 3528, 3530, 3531, 3533, 3535, 3536, 3538, 3540, 3542, 3543, 3545, 3547, 3548,
        3550, 3552, 3553, 3555, 3557, 3558, 3560, 3562, 3563, 3565, 3567, 3568, 3570, 3572, 3573, 3575, 3577, 3578, 3580,
        3582, 3583, 3585, 3587, 3588, 3590, 3592, 3593, 3595, 3596, 3598, 3600, 3601, 3603, 3605, 3606, 3608, 3609, 3611,
        3612, 3614, 3616, 3617, 3619, 3620, 3622, 3623, 3625, 3626, 3628, 3629, 3631, 3632, 3634, 3635, 3637, 3638, 3640,
        3641, 3643, 3644, 3646, 3647, 3649, 3650, 3652, 3653, 3655, 3656, 3658, 3659, 3660, 3662, 3663, 3665, 3666, 3668,
        3669, 3671, 3672, 3673, 3675, 3676, 3678, 3679, 3681, 3682, 3684, 3685, 3686, 3688, 3689, 3691, 3692, 3694, 3695,
        3696, 3698, 3699, 3701, 3702, 3704, 3705, 3707, 3708, 3709, 3711, 3712, 3714, 3715, 3717, 3718, 3719, 3721, 3722,
        3724, 3725, 3726, 3728, 3729, 3731, 3732, 3733, 3735, 3736, 3738, 3739, 3740, 3742, 3743, 3745, 3746, 3747, 3749,
        3750, 3752, 3753, 3754, 3756, 3757, 3759, 3760, 3761, 3763, 3764, 3766, 3767, 3768, 3770, 3771, 3773, 3774, 3776,
        3777, 3778, 3780, 3781, 3783, 3784, 3786, 3787, 3789, 3790, 3792, 3793, 3795, 3796, 3797, 3799, 3801, 3802, 3804,
        3805, 3807, 3808, 3810, 3811, 3813, 3814, 3816, 3818, 3819, 3821, 3822, 3824, 3825, 3827, 3829, 3830, 3832, 3833,
        3835, 3837, 3838, 3840, 3842, 3843, 3845, 3846, 3848, 3850, 3851, 3853, 3855, 3856, 3858, 3859, 3861, 3863, 3864,
        3866, 3868, 3869, 3871, 3872, 3874, 3876, 3877, 3879, 3880, 3882, 3884, 3885, 3887, 3888, 3890, 3892, 3893, 3895,
        3896, 3898, 3899, 3901, 3903, 3904, 3906, 3907, 3909, 3910, 3912, 3913, 3915, 3916, 3918, 3919, 3921, 3922, 3924,
        3925, 3927, 3928, 3930, 3931, 3933, 3934, 3936, 3937, 3939, 3940, 3942, 3943, 3945, 3946, 3948, 3949, 3951, 3952,
        3954, 3955, 3957, 3958, 3960, 3961, 3963, 3964, 3966, 3967, 3969, 3970, 3972, 3973, 3974, 3976, 3977, 3979, 3980,
        3982, 3983, 3985, 3986, 3988, 3989, 3991, 3992, 3994, 3995, 3997, 3999, 4000, 4002, 4003, 4005, 4006, 4008, 4009,
        4011, 4012, 4014, 4015, 4017, 4018, 4020, 4021, 4023, 4024, 4026, 4027, 4029, 4031, 4032, 4034, 4035, 4037, 4038,
        4040, 4041, 4043, 4044, 4046, 4047, 4049, 4050, 4052, 4054, 4055, 4057, 4058, 4060, 4061, 4063, 4064, 4066, 4067,
        4069, 4070, 4072, 4074, 4075, 4077, 4078, 4080, 4081, 4083, 4084, 4086, 4087, 4089, 4090, 4092, 4093, 4095
    }
};

static const ISP_CMOS_GAMMA_S g_stIspGammaFSWDR = {
#if 1
    { 0,    5,    10,   15,   20,   25,   30,   35,   40,   44,   49,   54,   59,   64,   69,   74,   79,   84,   89,
      94,   99,   103,  108,  113,  118,  123,  128,  133,  138,  142,  147,  152,  157,  162,  167,  171,  176,  181,
      186,  191,  196,  200,  205,  210,  215,  220,  224,  229,  234,  239,  244,  249,  253,  258,  263,  268,  273,
      278,  283,  287,  292,  297,  302,  307,  312,  317,  321,  326,  331,  336,  341,  346,  351,  356,  361,  366,
      371,  376,  381,  386,  391,  396,  401,  406,  411,  416,  421,  426,  431,  436,  441,  446,  451,  456,  461,
      466,  472,  477,  482,  487,  492,  498,  503,  508,  513,  519,  524,  529,  535,  540,  545,  551,  556,  561,
      567,  572,  578,  583,  589,  594,  600,  605,  611,  616,  622,  628,  633,  639,  645,  650,  656,  662,  667,
      673,  679,  685,  691,  697,  702,  708,  714,  720,  726,  732,  738,  744,  750,  756,  762,  768,  774,  780,
      787,  793,  799,  805,  811,  817,  824,  830,  836,  842,  849,  855,  861,  867,  874,  880,  886,  893,  899,
      905,  912,  918,  925,  931,  937,  944,  950,  957,  963,  970,  976,  982,  989,  995,  1002, 1008, 1015, 1021,
      1028, 1034, 1041, 1047, 1054, 1060, 1067, 1074, 1080, 1087, 1093, 1100, 1106, 1113, 1119, 1126, 1132, 1139, 1145,
      1152, 1159, 1165, 1172, 1178, 1185, 1191, 1198, 1204, 1211, 1217, 1224, 1230, 1237, 1244, 1250, 1257, 1263, 1270,
      1276, 1283, 1289, 1295, 1302, 1308, 1315, 1321, 1328, 1334, 1341, 1347, 1353, 1360, 1366, 1373, 1379, 1385, 1392,
      1398, 1404, 1411, 1417, 1423, 1430, 1436, 1442, 1448, 1455, 1461, 1467, 1473, 1479, 1486, 1492, 1498, 1505, 1511,
      1517, 1524, 1530, 1536, 1543, 1549, 1555, 1562, 1568, 1575, 1581, 1587, 1594, 1600, 1607, 1613, 1620, 1626, 1632,
      1639, 1645, 1652, 1658, 1665, 1671, 1678, 1684, 1690, 1697, 1703, 1710, 1716, 1723, 1729, 1736, 1742, 1749, 1755,
      1761, 1768, 1774, 1781, 1787, 1794, 1800, 1806, 1813, 1819, 1826, 1832, 1838, 1845, 1851, 1857, 1864, 1870, 1876,
      1883, 1889, 1895, 1902, 1908, 1914, 1920, 1927, 1933, 1939, 1945, 1952, 1958, 1964, 1970, 1976, 1982, 1988, 1995,
      2001, 2007, 2013, 2019, 2025, 2031, 2037, 2043, 2049, 2055, 2060, 2066, 2072, 2078, 2084, 2090, 2095, 2101, 2107,
      2113, 2118, 2124, 2130, 2135, 2141, 2147, 2152, 2158, 2163, 2169, 2174, 2180, 2185, 2190, 2196, 2201, 2206, 2212,
      2217, 2222, 2227, 2232, 2238, 2243, 2248, 2253, 2258, 2263, 2268, 2273, 2278, 2283, 2287, 2292, 2297, 2302, 2307,
      2312, 2316, 2321, 2326, 2330, 2335, 2340, 2344, 2349, 2354, 2358, 2363, 2367, 2372, 2376, 2381, 2385, 2390, 2394,
      2398, 2403, 2407, 2411, 2416, 2420, 2424, 2429, 2433, 2437, 2441, 2446, 2450, 2454, 2458, 2462, 2467, 2471, 2475,
      2479, 2483, 2487, 2491, 2495, 2499, 2503, 2507, 2511, 2515, 2519, 2523, 2527, 2531, 2535, 2539, 2543, 2547, 2551,
      2555, 2558, 2562, 2566, 2570, 2574, 2578, 2582, 2585, 2589, 2593, 2597, 2601, 2604, 2608, 2612, 2616, 2619, 2623,
      2627, 2631, 2634, 2638, 2642, 2646, 2649, 2653, 2657, 2660, 2664, 2668, 2671, 2675, 2679, 2683, 2686, 2690, 2694,
      2697, 2701, 2705, 2708, 2712, 2716, 2719, 2723, 2727, 2730, 2734, 2738, 2741, 2745, 2749, 2752, 2756, 2760, 2764,
      2768, 2771, 2775, 2779, 2782, 2786, 2789, 2793, 2796, 2800, 2804, 2807, 2811, 2814, 2818, 2821, 2825, 2828, 2832,
      2835, 2839, 2842, 2846, 2849, 2853, 2856, 2860, 2863, 2867, 2870, 2873, 2877, 2880, 2884, 2887, 2891, 2894, 2897,
      2901, 2904, 2908, 2911, 2914, 2918, 2921, 2924, 2928, 2931, 2934, 2938, 2941, 2944, 2948, 2951, 2954, 2958, 2961,
      2964, 2967, 2971, 2974, 2977, 2981, 2984, 2987, 2990, 2994, 2997, 3000, 3003, 3006, 3010, 3013, 3016, 3019, 3023,
      3026, 3029, 3032, 3035, 3038, 3042, 3045, 3048, 3051, 3054, 3057, 3061, 3064, 3067, 3070, 3073, 3076, 3079, 3082,
      3086, 3089, 3092, 3095, 3098, 3101, 3104, 3107, 3110, 3113, 3116, 3119, 3122, 3125, 3129, 3132, 3135, 3138, 3141,
      3144, 3147, 3150, 3153, 3156, 3159, 3162, 3165, 3168, 3171, 3174, 3177, 3180, 3183, 3185, 3188, 3191, 3194, 3197,
      3200, 3203, 3206, 3209, 3212, 3215, 3218, 3221, 3224, 3227, 3229, 3232, 3235, 3238, 3241, 3244, 3247, 3250, 3252,
      3255, 3258, 3261, 3264, 3267, 3270, 3272, 3275, 3278, 3281, 3284, 3287, 3289, 3292, 3295, 3298, 3301, 3303, 3306,
      3309, 3312, 3315, 3317, 3320, 3323, 3326, 3328, 3331, 3334, 3337, 3339, 3342, 3345, 3348, 3350, 3353, 3356, 3359,
      3361, 3364, 3367, 3370, 3372, 3375, 3378, 3380, 3383, 3386, 3388, 3391, 3394, 3396, 3399, 3402, 3405, 3407, 3410,
      3413, 3415, 3418, 3420, 3423, 3426, 3428, 3431, 3434, 3436, 3439, 3442, 3444, 3447, 3449, 3452, 3455, 3457, 3460,
      3462, 3465, 3468, 3470, 3473, 3475, 3478, 3481, 3483, 3486, 3488, 3491, 3493, 3496, 3498, 3501, 3504, 3506, 3509,
      3511, 3514, 3516, 3519, 3521, 3524, 3526, 3529, 3531, 3534, 3536, 3539, 3541, 3544, 3546, 3549, 3551, 3554, 3556,
      3559, 3561, 3564, 3566, 3569, 3571, 3574, 3576, 3579, 3581, 3584, 3586, 3588, 3591, 3593, 3596, 3598, 3601, 3603,
      3606, 3608, 3610, 3613, 3615, 3618, 3620, 3622, 3625, 3627, 3630, 3632, 3634, 3637, 3639, 3642, 3644, 3646, 3649,
      3651, 3654, 3656, 3658, 3661, 3663, 3665, 3668, 3670, 3673, 3675, 3677, 3680, 3682, 3684, 3687, 3689, 3691, 3694,
      3696, 3698, 3701, 3703, 3705, 3708, 3710, 3712, 3714, 3717, 3719, 3721, 3724, 3726, 3728, 3731, 3733, 3735, 3737,
      3740, 3742, 3744, 3747, 3749, 3751, 3753, 3756, 3758, 3760, 3762, 3765, 3767, 3769, 3771, 3774, 3776, 3778, 3780,
      3783, 3785, 3787, 3789, 3792, 3794, 3796, 3798, 3801, 3803, 3805, 3807, 3809, 3812, 3814, 3816, 3818, 3820, 3823,
      3825, 3827, 3829, 3831, 3834, 3836, 3838, 3840, 3842, 3844, 3847, 3849, 3851, 3853, 3855, 3857, 3860, 3862, 3864,
      3866, 3868, 3870, 3873, 3875, 3877, 3879, 3881, 3883, 3885, 3888, 3890, 3892, 3894, 3896, 3898, 3900, 3902, 3905,
      3907, 3909, 3911, 3913, 3915, 3917, 3919, 3921, 3924, 3926, 3928, 3930, 3932, 3934, 3936, 3938, 3940, 3942, 3944,
      3946, 3949, 3951, 3953, 3955, 3957, 3959, 3961, 3963, 3965, 3967, 3969, 3971, 3973, 3975, 3977, 3979, 3981, 3984,
      3986, 3988, 3990, 3992, 3994, 3996, 3998, 4000, 4002, 4004, 4006, 4008, 4010, 4012, 4014, 4016, 4018, 4020, 4022,
      4024, 4026, 4028, 4030, 4032, 4034, 4036, 4038, 4040, 4042, 4044, 4046, 4048, 4050, 4052, 4054, 4056, 4058, 4060,
      4062, 4064, 4066, 4068, 4070, 4072, 4074, 4075, 4077, 4079, 4081, 4083, 4085, 4087, 4089, 4091, 4093, 4095 }
#endif
};

#ifdef CONFIG_HI_ISP_PREGAMMA_SUPPORT
static const ISP_CMOS_PREGAMMA_S g_stPreGamma = {
    0,
    { 0,       12417,   21619,   29902,   37641,   44997,   52063,   58896,   65536,   72012,   78344,   84552,
      90647,   96641,   102544,  108363,  114105,  119775,  125379,  130921,  136406,  141835,  147213,  152542,
      157825,  163065,  168262,  173420,  178540,  183623,  188671,  193686,  198668,  203619,  208541,  213433,
      218298,  223136,  227947,  232734,  237496,  242234,  246949,  251642,  256313,  260962,  265592,  270201,
      274790,  279360,  283912,  288446,  292962,  297460,  301942,  306407,  310855,  315288,  319706,  324108,
      328495,  332868,  337226,  341571,  345901,  350218,  354522,  358813,  363091,  367356,  371609,  375850,
      380079,  384296,  388502,  392696,  396880,  401052,  405213,  409364,  413504,  417634,  421754,  425863,
      429963,  434053,  438134,  442205,  446266,  450319,  454362,  458396,  462422,  466438,  470446,  474446,
      478437,  482420,  486395,  490361,  494320,  498270,  502213,  506148,  510076,  513996,  517908,  521813,
      525711,  529601,  533485,  537361,  541231,  545093,  548949,  552798,  556640,  560475,  564305,  568127,
      571943,  575753,  579557,  583354,  587145,  590930,  594709,  598482,  602249,  606010,  609765,  613515,
      617259,  620997,  624729,  628456,  632178,  635894,  639604,  643309,  647009,  650704,  654393,  658077,
      661756,  665430,  669099,  672763,  676421,  680075,  683724,  687368,  691008,  694642,  698272,  701897,
      705517,  709133,  712744,  716351,  719953,  723550,  727143,  730732,  734316,  737896,  741471,  745043,
      748610,  752172,  755731,  759285,  762835,  766381,  769923,  773461,  776995,  780525,  784050,  787572,
      791090,  794604,  798114,  801620,  805123,  808622,  812116,  815608,  819095,  822579,  826059,  829535,
      833008,  836477,  839942,  843404,  846862,  850317,  853768,  857216,  860661,  864102,  867539,  870973,
      874404,  877831,  881255,  884676,  888093,  891507,  894918,  898326,  901730,  905131,  908529,  911924,
      915316,  918704,  922090,  925472,  928851,  932227,  935600,  938970,  942337,  945701,  949062,  952420,
      955775,  959127,  962477,  965823,  969166,  972507,  975845,  979179,  982511,  985840,  989167,  992490,
      995811,  999129,  1002444, 1005757, 1009067, 1012374, 1015678, 1018980, 1022279, 1025575, 1028869, 1032160,
      1035448, 1038734, 1042017, 1045298, 1048575 }
};
#endif

#ifdef CONFIG_HI_ISP_EDGEMARK_SUPPORT
static const ISP_CMOS_EDGEMARK_S g_stIspEdgeMark = {
    0,        /* HI_BOOL bEnable */
    100,      /* HI_U8     u8Threshold */
    0xFF0000, /* HI_U32    u32Color */
};
#endif

#ifdef CONFIG_HI_ISP_HLC_SUPPORT
static const ISP_CMOS_HLC_S g_stIspHlc = {
    0,   /* HI_BOOL bEnable */
    248, /* HI_U8 u8LumaThr */
    10,  /* HI_U8 u8LumaTarget */
};
#endif

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpen = {
    /* u8SkinUmin */
    100,
    /* u8SkinVmin */
    135,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    150,

    /* Manual Para */
    {
        /* au8LumaWgt[ISP_SHARPEN_LUMA_NUM] */
        {
            127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
            127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127
        },
        /* u16TextureStr[ISP_SHARPEN_GAIN_NUM] */
        {
            250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270,
            270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150
        },
        /* u16EdgeStr[ISP_SHARPEN_GAIN_NUM] */
        {
            120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210,
            210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120
        },
        /* u16TextureFreq */
        190,
        /* u16EdgeFreq */
        128,
        /* u8OverShoot */
        65,
        /* u8UnderShoot */
        75,
        /* u8shootSupStr */
        7,
        /* u8shootSupAdj */
        9,
        /* u8DetailCtrl */
        128,
        /* u8DetailCtrlThr */
        180,
        /* u8EdgeFiltStr */
        60,
        /* u8EdgeFiltMaxCap */
        18,
        /* u8RGain */
        20,
        /* u8GGain */
        32,
        /* u8BGain */
        20,
        /* u8SkinGain */
        25,
        /* u8MaxSharpGain */
        40
    },

    /* Auto Para */
    {
        /* au16LumaWgt[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100,  200,  400,  800,  1600,  3200,  6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200,
           1638400, 3276800 */
        {
            { 127, 127, 127, 111, 100, 90, 73, 73, 73, 73, 73, 49, 49, 49, 49, 49 },
            { 127, 127, 127, 116, 106, 100, 80, 80, 80, 80, 80, 55, 55, 55, 55, 55 },
            { 127, 127, 127, 120, 111, 106, 88, 88, 88, 88, 88, 62, 62, 62, 62, 62 },
            { 127, 127, 127, 123, 116, 112, 95, 95, 95, 95, 95, 70, 70, 70, 70, 70 },
            { 127, 127, 127, 125, 119, 116, 102, 102, 102, 102, 102, 77, 77, 77, 77, 77 },
            { 127, 127, 127, 127, 122, 120, 107, 107, 107, 107, 107, 84, 84, 84, 84, 84 },
            { 127, 127, 127, 127, 124, 123, 111, 111, 111, 111, 111, 90, 90, 90, 90, 90 },
            { 127, 127, 127, 127, 125, 125, 115, 115, 115, 115, 115, 96, 96, 96, 96, 96 },
            { 127, 127, 127, 127, 126, 126, 119, 119, 119, 119, 119, 102, 102, 102, 102, 102 },
            { 127, 127, 127, 127, 127, 127, 121, 121, 121, 121, 121, 106, 106, 106, 106, 106 },
            { 127, 127, 127, 127, 127, 127, 124, 124, 124, 124, 124, 110, 110, 110, 110, 110 },
            { 127, 127, 127, 127, 127, 127, 125, 125, 125, 125, 125, 114, 114, 114, 114, 114 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 117, 117, 117, 117, 117 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 120, 120, 120, 120, 120 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 123, 123, 123, 123, 123 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 125, 125, 125, 125, 125 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
            { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 }
        },

        /* au16TextureStr[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400,
           3276800 */
        {
            { 95, 76, 95, 63, 15, 9, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 95, 76, 95, 63, 15, 9, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 98, 79, 98, 66, 17, 9, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 98, 79, 98, 66, 17, 10, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 102, 83, 102, 68, 21, 13, 9, 9, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 102, 83, 102, 68, 21, 15, 10, 10, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 105, 86, 105, 71, 24, 19, 13, 13, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 105, 86, 105, 71, 24, 24, 15, 15, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 109, 90, 109, 74, 28, 34, 19, 19, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 109, 90, 109, 74, 28, 41, 24, 24, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 112, 94, 112, 77, 32, 51, 34, 34, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 112, 94, 112, 77, 32, 63, 41, 41, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 116, 98, 116, 80, 35, 75, 51, 51, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 116, 98, 116, 80, 35, 81, 57, 57, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 119, 101, 119, 83, 39, 87, 63, 63, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 119, 101, 119, 83, 39, 91, 69, 69, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 123, 106, 123, 85, 43, 96, 75, 75, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 126, 110, 126, 88, 46, 102, 87, 87, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 130, 115, 130, 91, 49, 104, 96, 96, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 134, 120, 134, 93, 52, 99, 102, 102, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 138, 126, 138, 95, 55, 88, 104, 104, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 145, 135, 145, 99, 58, 73, 99, 99, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 150, 142, 150, 104, 60, 56, 88, 88, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 151, 143, 151, 106, 59, 44, 78, 78, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 153, 143, 153, 108, 58, 34, 67, 67, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 153, 142, 153, 109, 55, 22, 50, 50, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 153, 139, 153, 109, 51, 14, 34, 34, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 148, 135, 148, 106, 44, 10, 22, 22, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 139, 130, 139, 102, 37, 7, 14, 14, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 128, 123, 128, 95, 30, 7, 8, 8, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 117, 117, 117, 89, 23, 8, 7, 7, 6, 6, 5, 5, 5, 5, 5, 5 },
            { 109, 113, 109, 86, 19, 9, 8, 8, 6, 6, 5, 5, 5, 5, 5, 5 }
        },
        /* au16EdgeStr */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800
         */
        {
            { 193, 193, 183, 173, 163, 153, 143, 133, 123, 113, 103, 93, 93, 93, 93, 93 },
            { 197, 197, 189, 179, 169, 159, 149, 138, 128, 118, 108, 98, 98, 98, 98, 98 },
            { 202, 202, 195, 185, 175, 165, 155, 145, 134, 124, 114, 103, 103, 103, 103, 103 },
            { 209, 209, 201, 191, 181, 171, 161, 151, 140, 130, 119, 109, 109, 109, 109, 109 },
            { 216, 216, 208, 198, 188, 178, 168, 157, 146, 135, 125, 114, 114, 114, 114, 114 },
            { 222, 222, 213, 203, 193, 183, 173, 162, 151, 140, 129, 119, 119, 119, 119, 119 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 122, 122, 122, 122, 122 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 123, 123, 123, 123, 123 },
            { 225, 225, 215, 205, 194, 184, 174, 163, 153, 142, 131, 121, 121, 121, 121, 121 },
            { 222, 222, 211, 201, 191, 181, 171, 160, 150, 139, 129, 118, 118, 118, 118, 118 },
            { 218, 218, 207, 197, 187, 177, 167, 156, 146, 136, 125, 115, 115, 115, 115, 115 },
            { 213, 213, 203, 193, 183, 173, 163, 152, 142, 132, 122, 112, 112, 112, 112, 112 },
            { 208, 208, 198, 188, 178, 168, 158, 148, 138, 128, 118, 108, 108, 108, 108, 108 },
            { 202, 202, 192, 182, 173, 163, 153, 143, 133, 124, 114, 104, 104, 104, 104, 104 },
            { 195, 195, 186, 176, 167, 157, 147, 138, 128, 119, 109, 99, 99, 99, 99, 99 },
            { 188, 188, 179, 169, 160, 150, 141, 132, 122, 113, 103, 94, 94, 94, 94, 94 },
            { 180, 180, 171, 162, 153, 143, 135, 125, 116, 107, 97, 89, 89, 89, 89, 89 },
            { 171, 171, 162, 154, 145, 136, 128, 119, 110, 101, 91, 83, 83, 83, 83, 83 },
            { 162, 162, 154, 145, 137, 128, 120, 112, 103, 94, 85, 77, 77, 77, 77, 77 },
            { 153, 153, 145, 137, 128, 120, 113, 104, 96, 88, 78, 71, 71, 71, 71, 71 },
            { 144, 144, 136, 128, 120, 112, 105, 97, 89, 81, 72, 65, 65, 65, 65, 65 },
            { 135, 135, 126, 118, 111, 103, 97, 89, 81, 74, 66, 59, 59, 59, 59, 59 },
            { 125, 125, 115, 108, 100, 93, 87, 80, 73, 66, 58, 52, 52, 52, 52, 52 },
            { 114, 114, 103, 96, 89, 82, 77, 70, 64, 58, 51, 45, 45, 45, 45, 45 },
            { 104, 104, 92, 85, 78, 71, 67, 61, 55, 50, 44, 38, 38, 38, 38, 38 },
            { 93, 93, 80, 74, 67, 60, 57, 52, 46, 42, 37, 32, 32, 32, 32, 32 },
            { 82, 82, 70, 64, 57, 51, 48, 43, 38, 35, 30, 26, 26, 26, 26, 26 },
            { 72, 72, 61, 55, 49, 43, 41, 36, 32, 29, 25, 21, 21, 21, 21, 21 },
            { 61, 61, 55, 49, 43, 37, 35, 31, 27, 25, 21, 17, 17, 17, 17, 17 }
        },
        /* au16TextureFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200,  102400,  204800,   409600,   819200,   1638400,
           3276800 */
        { 200, 180, 160, 140, 140, 140, 130, 128, 128, 128, 128, 100, 100, 100, 100, 100 },
        /* au16EdgeFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 150, 140, 130, 120, 110, 100, 100, 100, 100, 100, 96, 96, 96, 96, 96, 96 },
        /* au8OverShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 55, 60, 60, 65, 60, 60, 55, 50, 50, 50, 30, 10, 10, 10, 10, 10 },
        /* au8UnderShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60, 65, 65, 70, 75, 80, 75, 65, 55, 55, 55, 55, 55, 15, 15, 15 },
        /* au8ShootSupStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 1, 2, 3, 4, 4, 6, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8 },
        /* au8ShootSupAdj[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 2, 3, 4, 4, 4, 4, 5, 5, 5, 3, 4, 4, 4, 4, 4, 4 },
        /* au8DetailCtrl[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 128, 128, 128, 120, 110, 105, 100, 100, 90, 80, 70, 70, 70, 70, 70, 70 },
        /* au8DetailCtrlThr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180, 180 },
        /* au8EdgeFiltStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60, 60 },
        /* au8EdgeFiltMaxCap */
        { 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18 },
        /* au8RGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 },
        /* au8GGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 40, 35, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32 },
        /* au8BGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 31, 31, 25, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 },
        /* au8SkinGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25, 25 },
        /* u8MaxSharpGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 }
    },
};

static const ISP_CMOS_SHARPEN_S g_stIspYuvSharpenWdr = {
    /* u8SkinUmin */
    100,
    /* u8SkinVmin */
    135,
    /* u8SkinUmax */
    128,
    /* u8SkinVmax */
    150,
    /* Manual Para */
    {
        /* au8LumaWgt[ISP_SHARPEN_LUMA_NUM] */
        { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127,
          127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
        /* u16TextureStr[ISP_SHARPEN_GAIN_NUM] */
        { 250, 420, 390, 390, 390, 390, 390, 370, 350, 330, 310, 290, 270, 270, 270, 270,
          270, 270, 266, 260, 244, 230, 230, 230, 230, 230, 230, 210, 190, 190, 170, 150 },
        /* u16EdgeStr[ISP_SHARPEN_GAIN_NUM] */
        { 120, 123, 125, 128, 130, 135, 140, 148, 160, 168, 180, 190, 200, 210, 210, 210,
          210, 210, 200, 190, 185, 175, 165, 160, 146, 136, 130, 128, 125, 123, 120, 120 },
        /* u16TextureFreq */
        200,
        /* u16EdgeFreq */
        128,
        /* u8OverShoot */
        65,
        /* u8UnderShoot */
        75,
        /* u8shootSupStr */
        7,
        /* u8shootSupAdj */
        9,
        /* u8DetailCtrl */
        128,
        /* u8DetailCtrlThr */
        180,
        /* u8EdgeFiltStr */
        50,
        /* u8EdgeFiltMaxCap */
        18,
        /* u8RGain */
        20,
        /* u8GGain */
        32,
        /* u8BGain */
        20,
        /* u8SkinGain */
        25,
        /* u8MaxSharpGain */
        40 },
    /* Auto Para */
    {
        /* au16LumaWgt[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100,  200,  400,  800,  1600,  3200,  6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200,
           1638400, 3276800 */
        {{ 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64, 64 },
         { 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68, 68 },
         { 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 72, 72 },
         { 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76, 76 },
         { 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80, 80 },
         { 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84, 84 },
         { 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88, 88 },
         { 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92, 92 },
         { 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96, 96 },
         { 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100, 100 },
         { 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104 },
         { 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108, 108 },
         { 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112, 112 },
         { 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116, 116 },
         { 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121 },
         { 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124, 124 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127, 127 },
         { 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121, 121 },
         { 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113, 113 },
         { 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104, 104 },
         { 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95, 95 }},

        /* au16TextureStr[ISP_SHARPEN_GAIN_NUM][ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO: 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400,
           3276800 */
        {
            { 193, 193, 183, 173, 163, 153, 143, 133, 123, 113, 103, 93, 93, 93, 93, 93 },
            { 197, 197, 189, 179, 169, 159, 149, 138, 128, 118, 108, 98, 98, 98, 98, 98 },
            { 202, 202, 195, 185, 175, 165, 155, 145, 134, 124, 114, 103, 103, 103, 103, 103 },
            { 209, 209, 201, 191, 181, 171, 161, 151, 140, 130, 119, 109, 109, 109, 109, 109 },
            { 216, 216, 208, 198, 188, 178, 168, 157, 146, 135, 125, 114, 114, 114, 114, 114 },
            { 222, 222, 213, 203, 193, 183, 173, 162, 151, 140, 129, 119, 119, 119, 119, 119 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 122, 122, 122, 122, 122 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 123, 123, 123, 123, 123 },
            { 225, 225, 215, 205, 194, 184, 174, 163, 153, 142, 131, 121, 121, 121, 121, 121 },
            { 222, 222, 211, 201, 191, 181, 171, 160, 150, 139, 129, 118, 118, 118, 118, 118 },
            { 218, 218, 207, 197, 187, 177, 167, 156, 146, 136, 125, 115, 115, 115, 115, 115 },
            { 213, 213, 203, 193, 183, 173, 163, 152, 142, 132, 122, 112, 112, 112, 112, 112 },
            { 208, 208, 198, 188, 178, 168, 158, 148, 138, 128, 118, 108, 108, 108, 108, 108 },
            { 202, 202, 192, 182, 173, 163, 153, 143, 133, 124, 114, 104, 104, 104, 104, 104 },
            { 195, 195, 186, 176, 167, 157, 147, 138, 128, 119, 109, 99, 99, 99, 99, 99 },
            { 188, 188, 179, 169, 160, 150, 141, 132, 122, 113, 103, 94, 94, 94, 94, 94 },
            { 180, 180, 171, 162, 153, 143, 135, 125, 116, 107, 97, 89, 89, 89, 89, 89 },
            { 171, 171, 162, 154, 145, 136, 128, 119, 110, 101, 91, 83, 83, 83, 83, 83 },
            { 162, 162, 154, 145, 137, 128, 120, 112, 103, 94, 85, 77, 77, 77, 77, 77 },
            { 153, 153, 145, 137, 128, 120, 113, 104, 96, 88, 78, 71, 71, 71, 71, 71 },
            { 144, 144, 136, 128, 120, 112, 105, 97, 89, 81, 72, 65, 65, 65, 65, 65 },
            { 135, 135, 126, 118, 111, 103, 97, 89, 81, 74, 66, 59, 59, 59, 59, 59 },
            { 125, 125, 115, 108, 100, 93, 87, 80, 73, 66, 58, 52, 52, 52, 52, 52 },
            { 114, 114, 103, 96, 89, 82, 77, 70, 64, 58, 51, 45, 45, 45, 45, 45 },
            { 104, 104, 92, 85, 78, 71, 67, 61, 55, 50, 44, 38, 38, 38, 38, 38 },
            { 93, 93, 80, 74, 67, 60, 57, 52, 46, 42, 37, 32, 32, 32, 32, 32 },
            { 82, 82, 70, 64, 57, 51, 48, 43, 38, 35, 30, 26, 26, 26, 26, 26 },
            { 72, 72, 61, 55, 49, 43, 41, 36, 32, 29, 25, 21, 21, 21, 21, 21 },
            { 61, 61, 55, 49, 43, 37, 35, 31, 27, 25, 21, 17, 17, 17, 17, 17 }},
        /* au16EdgeStr     */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200, 102400, 204800, 409600, 819200, 1638400, 3276800
         */
        {
            { 193, 193, 183, 173, 163, 153, 143, 133, 123, 113, 103, 93, 93, 93, 93, 93 },
            { 197, 197, 189, 179, 169, 159, 149, 138, 128, 118, 108, 98, 98, 98, 98, 98 },
            { 202, 202, 195, 185, 175, 165, 155, 145, 134, 124, 114, 103, 103, 103, 103, 103 },
            { 209, 209, 201, 191, 181, 171, 161, 151, 140, 130, 119, 109, 109, 109, 109, 109 },
            { 216, 216, 208, 198, 188, 178, 168, 157, 146, 135, 125, 114, 114, 114, 114, 114 },
            { 222, 222, 213, 203, 193, 183, 173, 162, 151, 140, 129, 119, 119, 119, 119, 119 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 122, 122, 122, 122, 122 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 229, 229, 219, 209, 199, 189, 179, 168, 157, 146, 135, 124, 124, 124, 124, 124 },
            { 227, 227, 217, 207, 197, 187, 177, 166, 155, 144, 133, 123, 123, 123, 123, 123 },
            { 225, 225, 215, 205, 194, 184, 174, 163, 153, 142, 131, 121, 121, 121, 121, 121 },
            { 222, 222, 211, 201, 191, 181, 171, 160, 150, 139, 129, 118, 118, 118, 118, 118 },
            { 218, 218, 207, 197, 187, 177, 167, 156, 146, 136, 125, 115, 115, 115, 115, 115 },
            { 213, 213, 203, 193, 183, 173, 163, 152, 142, 132, 122, 112, 112, 112, 112, 112 },
            { 208, 208, 198, 188, 178, 168, 158, 148, 138, 128, 118, 108, 108, 108, 108, 108 },
            { 202, 202, 192, 182, 173, 163, 153, 143, 133, 124, 114, 104, 104, 104, 104, 104 },
            { 195, 195, 186, 176, 167, 157, 147, 138, 128, 119, 109, 99, 99, 99, 99, 99 },
            { 188, 188, 179, 169, 160, 150, 141, 132, 122, 113, 103, 94, 94, 94, 94, 94 },
            { 180, 180, 171, 162, 153, 143, 135, 125, 116, 107, 97, 89, 89, 89, 89, 89 },
            { 171, 171, 162, 154, 145, 136, 128, 119, 110, 101, 91, 83, 83, 83, 83, 83 },
            { 162, 162, 154, 145, 137, 128, 120, 112, 103, 94, 85, 77, 77, 77, 77, 77 },
            { 153, 153, 145, 137, 128, 120, 113, 104, 96, 88, 78, 71, 71, 71, 71, 71 },
            { 144, 144, 136, 128, 120, 112, 105, 97, 89, 81, 72, 65, 65, 65, 65, 65 },
            { 135, 135, 126, 118, 111, 103, 97, 89, 81, 74, 66, 59, 59, 59, 59, 59 },
            { 125, 125, 115, 108, 100, 93, 87, 80, 73, 66, 58, 52, 52, 52, 52, 52 },
            { 114, 114, 103, 96, 89, 82, 77, 70, 64, 58, 51, 45, 45, 45, 45, 45 },
            { 104, 104, 92, 85, 78, 71, 67, 61, 55, 50, 44, 38, 38, 38, 38, 38 },
            { 93, 93, 80, 74, 67, 60, 57, 52, 46, 42, 37, 32, 32, 32, 32, 32 },
            { 82, 82, 70, 64, 57, 51, 48, 43, 38, 35, 30, 26, 26, 26, 26, 26 },
            { 72, 72, 61, 55, 49, 43, 41, 36, 32, 29, 25, 21, 21, 21, 21, 21 },
            { 61, 61, 55, 49, 43, 37, 35, 31, 27, 25, 21, 17, 17, 17, 17, 17 }},
        /* au16TextureFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        /* ISO */
        /* 100, 200, 400, 800, 1600, 3200, 6400, 12800, 25600, 51200,  102400,  204800,   409600,   819200,   1638400,
           3276800 */
        { 200, 200, 200, 190, 180, 170, 160, 150, 140, 130, 128, 110, 100, 100, 100, 100 },
        /* au16EdgeFreq[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 128, 128, 128, 120, 115, 110, 105, 100, 100, 100, 96, 96, 96, 96, 96, 96 },
        /* au8OverShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 50, 50, 50, 50, 50, 50, 50, 48, 45, 40, 30, 20, 10, 10, 10, 10 },
        /* au8UnderShoot[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60, 60, 60, 60, 60, 60, 60, 58, 55, 50, 40, 30, 20, 15, 15, 15 },
        /* au8ShootSupStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 8, 8, 7, 7, 7, 6, 5, 5, 0, 0, 0, 0, 0, 0, 0, 0 },
        /* au8ShootSupAdj[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 9, 9, 8, 8, 7, 7, 6, 6, 0, 0, 0, 0, 0, 0, 0, 0 },
        /* au8DetailCtrl[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 128, 128, 128, 128, 128, 128, 128, 128, 128, 128, 120, 120, 120, 120, 120, 120 },
        /* au8DetailCtrlThr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 180, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160, 160 },
        /* au8EdgeFiltStr[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 60, 58, 60, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62, 62 },
        /* au8EdgeFiltMaxCap */
        { 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18, 18 },
        /* au8RGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
        /* au8GGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32, 32 },
        /* au8BGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
        /* au8SkinGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16, 16 },
        /* u8MaxSharpGain[ISP_AUTO_ISO_STRENGTH_NUM] */
        { 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 }},

};

static AWB_CCM_S g_stAwbCcm = {
    4,
    {
        {
            7542, /* D75 */
            { 0x02AE, 0x8196, 0x8018, 0x806A, 0x01C1, 0x8057, 0x0001, 0x8156, 0x0255 },
        },
        {
            4926, /* D50 */
            { 0x029B, 0x8171, 0x802A, 0x806A, 0x01A7, 0x803D, 0x0012, 0x81B5, 0x02A3 },
        },
        {
            3773, /* TL84 */
            { 0x021D, 0x80CC, 0x8051, 0x80CB, 0x0208, 0x803D, 0x8004, 0x818F, 0x0293 },
        },
        {
            2650, /* A */
            { 0x021D, 0x80CC, 0x8051, 0x80CB, 0x0208, 0x803D, 0x8004, 0x818F, 0x0293 },
        },
        {
            1600,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1400,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1000,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
    },
};

static AWB_CCM_S g_stAwbCcmFsWdr = {
    3,
    {
        {
            4900,
            { 0x0183, 0x8073, 0x8010, 0x8062, 0x018d, 0x802b, 0x8018, 0x80a9, 0x01c1 },
        },
        {
            3850,
            { 0x018d, 0x808c, 0x8001, 0x806e, 0x017e, 0x8010, 0x800d, 0x80df, 0x01ec },
        },
        {
            2650,
            { 0x0217, 0x8113, 0x8004, 0x806C, 0x0180, 0x8014, 0x800A, 0x80D9, 0x01E3 },
        },
        {
            2100,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1600,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1400,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
        {
            1000,
            { 0x0100, 0x0000, 0x0000, 0x0000, 0x0100, 0x0000, 0x0000, 0x0000, 0x0100 },
        },
    },
};

static AWB_AGC_TABLE_S g_stAwbAgcTable = {
    /* bvalid */
    1,

    /* 1,  2,  4,  8, 16, 32, 64, 128, 256, 512, 1024, 2048, 4096, 8192, 16384, 32768 */
    /* saturation */
    { 128, 126, 126, 122, 120, 118, 110, 105, 105, 78, 64, 64, 64, 64, 64, 64 }
};

static AWB_AGC_TABLE_S g_stAwbAgcTableFSWDR = {
    /* bvalid */
    1,

    /* saturation */
    { 85, 85, 80, 75, 70, 65, 60, 55, 50, 40, 30, 20, 20, 20, 20, 20 }
};

static const ISP_CMOS_DEHAZE_S g_stIspDehaze = {
    /* bEnable */
    1,
    /* bUserLutEnable */
    0,
    /* enOpType */
    0,
    /* u8AutoStrength */
    10,
    /* u8ManualStrength */
    10
};

static const ISP_CMOS_DEHAZE_S g_stIspDehazeWDR = {
    /* bEnable */
    1,
    /* bUserLutEnable */
    1,
    /* enOpType */
    0,
    /* u8AutoStrength */
    100,
    /* u8ManualStrength */
    128
};

static const ISP_CMOS_DRC_S g_stIspDRC = {
    /* bEnable */
    1,
    /* enOpType */
    0,
    /* u16ManualStrength */
    0,
    /* u16AutoStrength */
    50,
    /* u8SpatialFltCoef */
    2,
    /* u8RangeFltCoef */
    2,
    /* u8ContrastControl */
    8,
    /* s8DetailAdjustFactor */
    0,
    /* u8RangeAdaMax */
    8,
    /* u8FltScaleFine */
    6,
    /* u8FltScaleCoarse */
    6,
    /* u8GradRevMax */
    64,
    /* u8GradRevThr */
    50,
    /* u8BrightGainLmt */
    15,
    /* u8BrightGainLmtStep */
    10,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    0,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    64,
    /* u8LocalMixingBrightMin */
    32,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    64,
    /* u8LocalMixingDarkMin */
    32,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    {
        1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024,
        1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024
    },
    /* ToneMappingValue[200] */
    {
        8,     8,     16,    24,    31,    39,    48,    56,    65,    75,    85,    95,    106,   118,   130,   143,
        156,   170,   185,   201,   218,   235,   254,   274,   294,   316,   339,   364,   390,   417,   446,   477,
        509,   543,   579,   617,   658,   701,   746,   794,   844,   898,   955,   1015,  1078,  1145,  1216,  1291,
        1370,  1454,  1543,  1637,  1736,  1841,  1952,  2069,  2194,  2325,  2465,  2612,  2767,  2932,  3106,  3290,
        3485,  3691,  3909,  4140,  4384,  4641,  4914,  5202,  5507,  5830,  6171,  6531,  6913,  7316,  7742,  8193,
        8669,  9173,  9705,  10268, 10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635,
        19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451,
        26959, 27473, 27995, 28524, 29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706,
        36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008,
        45424, 45842, 46265, 46691, 47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113,
        52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429,
        58697, 58967, 59238, 59510, 59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877,
        63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234
    },
    /* u8Asymmetry */
    2,
    /* u8SecondPole */
    180,
    /* u8Stretch */
    54,
    /* u8Compress */
    180,
    /* u8CurveSel */
    0,
    /* au16Xpoint */
    { 0, 200, 400, 600, 1000 },
    /* au16Ypoint */
    { 0, 200, 400, 600, 1000 },
    /* au16Slope */
    { 1000, 1000, 1000, 1000, 1000 }
};

static const ISP_CMOS_DRC_S g_stIspDRCWDR = {
    /* bEnable */
    1,
    /* enOpType */
    0,
    /* u16ManualStrength */
    1023,
    /* u16AutoStrength */
    512,
    /* u8SpatialFltCoef */
    0,
    /* u8RangeFltCoef */
    1,
    /* u8ContrastControl */
    9,
    /* s8DetailAdjustFactor */
    7,
    /* u8RangeAdaMax */
    4,
    /* u8FltScaleFine */
    3,
    /* u8FltScaleCoarse */
    3,
    /* u8GradRevMax */
    30,
    /* u8GradRevThr */
    35,
    /* u8BrightGainLmt */
    15,
    /* u8BrightGainLmtStep */
    10,
    /* u8DarkGainLmtY */
    0,
    /* u8DarkGainLmtC */
    0,
    /* u8PDStrength */
    35,
    /* u8LocalMixingBrightMax */
    32,
    /* u8LocalMixingBrightMin */
    24,
    /* u8LocalMixingBrightThr */
    96,
    /* s8LocalMixingBrightSlo */
    -3,
    /* u8LocalMixingDarkMax */
    36,
    /* u8LocalMixingDarkMin */
    28,
    /* u8LocalMixingDarkThr */
    200,
    /* s8LocalMixingDarkSlo */
    5,
    /* ColorCorrectionLut[33] */
    { 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 1024, 772, 768, 764,
      760,  756,  752,  748,  744,  740,  736,  732,  728,  724,  720,  716,  712,  708,  704, 700 },
    /* ToneMappingValue[200] */
    { 8,     8,     16,    24,    31,    39,    48,    56,    65,    75,    85,    95,    106,   118,   130,   143,
      156,   170,   185,   201,   218,   235,   254,   274,   294,   316,   339,   364,   390,   417,   446,   477,
      509,   543,   579,   617,   658,   701,   746,   794,   844,   898,   955,   1015,  1078,  1145,  1216,  1291,
      1370,  1454,  1543,  1637,  1736,  1841,  1952,  2069,  2194,  2325,  2465,  2612,  2767,  2932,  3106,  3290,
      3485,  3691,  3909,  4140,  4384,  4641,  4914,  5202,  5507,  5830,  6171,  6531,  6913,  7316,  7742,  8193,
      8669,  9173,  9705,  10268, 10863, 11492, 12145, 12808, 13483, 14171, 14872, 15587, 16319, 17069, 17840, 18635,
      19458, 19881, 20313, 20754, 21204, 21661, 22122, 22586, 23053, 23525, 24000, 24480, 24965, 25455, 25950, 26451,
      26959, 27473, 27995, 28524, 29062, 29609, 30165, 30732, 31309, 31899, 32501, 33116, 33746, 34391, 35043, 35706,
      36381, 37066, 37763, 38472, 39192, 39925, 40671, 41429, 42201, 42591, 42986, 43383, 43784, 44189, 44597, 45008,
      45424, 45842, 46265, 46691, 47121, 47555, 47993, 48434, 48880, 49329, 49783, 50241, 50703, 51169, 51639, 52113,
      52592, 53075, 53564, 54056, 54552, 55054, 55560, 56071, 56586, 56846, 57107, 57369, 57632, 57896, 58162, 58429,
      58697, 58967, 59238, 59510, 59783, 60057, 60333, 60611, 60889, 61169, 61451, 61733, 62017, 62303, 62589, 62877,
      63167, 63458, 63750, 64044, 64340, 64636, 64934, 65234 },
    /* u8Asymmetry */
    5,
    /* u8SecondPole */
    180,
    /* u8Stretch */
    50,
    /* u8Compress */
    150,
    /* u8CurveSel */
    0,
    /* au16Xpoint */
    { 0, 200, 400, 600, 1000 },
    /* au16Ypoint */
    { 0, 200, 400, 600, 1000 },
    /* au16Slope */
    { 1000, 1000, 1000, 1000, 1000 }
};

#ifdef CONFIG_HI_ISP_CA_SUPPORT
static const ISP_CMOS_CA_S g_stIspCA = {
    /* CA */
    1,
    /* Y */
    {
        36,   81,   111,  136,  158,  182,  207,  228,  259,  290,  317,  345,  369,  396, 420, 444, 468,  492,  515,
        534,  556,  574,  597,  614,  632,  648,  666,  681,  697,  709,  723,  734,  748, 758, 771, 780,  788,  800,
        808,  815,  822,  829,  837,  841,  848,  854,  858,  864,  868,  871,  878,  881, 885, 890, 893,  897,  900,
        903,  906,  909,  912,  915,  918,  921,  924,  926,  929,  931,  934,  936,  938, 941, 943, 945,  947,  949,
        951,  952,  954,  956,  958,  961,  962,  964,  966,  968,  969,  970,  971,  973, 974, 976, 977,  979,  980,
        981,  983,  984,  985,  986,  988,  989,  990,  991,  992,  993,  995,  996,  997, 998, 999, 1000, 1001, 1004,
        1005, 1006, 1007, 1009, 1010, 1011, 1012, 1014, 1016, 1017, 1019, 1020, 1022, 1024
    },
    /* ISO */
    { 1300, 1300, 1250, 1200, 1150, 1100, 1050, 1000, 950, 900, 900, 800, 800, 800, 800, 800 }
};
#endif

static const ISP_CMOS_LSC_S g_stCmosLsc_8M = {
    /* MeshStrength */
    4096,
    /* MeshScale */
    1,
    /* ISP_LSC_CABLI_TABLE_S */
    {
        {
            /* RGain */
            {
                446, 403, 366, 341, 325, 312, 302, 299, 291, 285, 280, 279, 276, 273, 272, 270, 269, 268, 268, 270, 272,
                274, 276, 281, 285, 288, 294, 301, 312, 324, 346, 377, 420, 437, 389, 357, 337, 320, 310, 301, 293, 289,
                281, 279, 276, 272, 271, 269, 267, 269, 268, 268, 269, 271, 272, 275, 279, 282, 287, 291, 298, 310, 319,
                336, 365, 399, 420, 380, 351, 332, 316, 306, 300, 291, 284, 280, 278, 273, 272, 270, 266, 266, 266, 264,
                265, 266, 269, 271, 272, 275, 279, 281, 290, 297, 303, 314, 333, 354, 382, 407, 369, 344, 325, 311, 302,
                297, 291, 283, 279, 275, 271, 269, 268, 267, 263, 264, 264, 264, 264, 266, 269, 270, 274, 277, 281, 287,
                291, 300, 312, 325, 344, 372, 393, 364, 337, 322, 310, 300, 294, 288, 281, 277, 273, 271, 268, 266, 265,
                262, 263, 261, 263, 264, 266, 268, 269, 273, 277, 281, 284, 288, 297, 307, 318, 338, 363, 382, 355, 335,
                320, 307, 300, 291, 288, 282, 277, 272, 270, 268, 265, 264, 262, 262, 261, 262, 263, 264, 265, 268, 272,
                273, 278, 281, 287, 294, 302, 315, 331, 354, 372, 350, 332, 314, 304, 299, 290, 284, 279, 275, 270, 269,
                265, 263, 262, 262, 262, 262, 262, 262, 264, 264, 267, 269, 272, 275, 280, 288, 291, 301, 313, 327, 348,
                370, 344, 326, 314, 302, 299, 290, 284, 279, 273, 270, 269, 264, 264, 262, 261, 261, 262, 262, 261, 262,
                264, 265, 268, 271, 277, 281, 285, 291, 297, 310, 323, 340, 365, 340, 324, 311, 301, 292, 289, 282, 278,
                273, 270, 267, 264, 262, 263, 261, 261, 262, 260, 262, 261, 263, 264, 269, 271, 273, 278, 283, 289, 297,
                305, 318, 337, 360, 338, 321, 310, 301, 293, 288, 281, 278, 273, 269, 267, 264, 262, 262, 260, 260, 260,
                259, 261, 261, 263, 263, 267, 271, 272, 278, 282, 289, 297, 307, 316, 333, 356, 336, 318, 309, 299, 292,
                286, 280, 275, 271, 269, 265, 264, 262, 262, 260, 259, 261, 260, 261, 261, 262, 263, 264, 269, 272, 278,
                282, 288, 293, 302, 315, 329, 353, 336, 317, 305, 298, 291, 285, 280, 278, 272, 268, 264, 263, 262, 261,
                261, 259, 260, 259, 261, 261, 261, 264, 265, 269, 272, 276, 281, 287, 293, 303, 313, 328, 351, 334, 315,
                305, 297, 290, 284, 279, 275, 270, 267, 264, 261, 261, 260, 259, 260, 258, 257, 260, 261, 262, 263, 264,
                268, 271, 275, 281, 286, 292, 301, 311, 327, 349, 334, 314, 303, 297, 289, 286, 279, 273, 271, 268, 265,
                263, 261, 260, 259, 259, 257, 258, 260, 260, 262, 263, 265, 268, 270, 274, 280, 287, 290, 299, 310, 327,
                350, 328, 314, 305, 298, 289, 283, 278, 273, 271, 268, 266, 262, 261, 260, 258, 258, 258, 257, 258, 260,
                262, 262, 264, 267, 271, 273, 279, 283, 291, 299, 310, 324, 349, 331, 313, 302, 297, 289, 284, 278, 275,
                270, 266, 265, 262, 261, 260, 258, 259, 257, 259, 258, 258, 261, 262, 262, 266, 270, 273, 279, 284, 289,
                298, 309, 323, 347, 327, 313, 303, 295, 289, 281, 278, 272, 270, 264, 264, 263, 261, 258, 258, 257, 257,
                257, 259, 258, 259, 260, 262, 266, 270, 272, 279, 284, 291, 298, 306, 322, 348, 326, 313, 301, 293, 288,
                281, 278, 272, 269, 266, 263, 263, 261, 260, 256, 257, 257, 257, 257, 258, 259, 260, 261, 266, 269, 272,
                278, 281, 289, 297, 308, 321, 349, 326, 312, 302, 295, 288, 281, 278, 271, 269, 265, 263, 262, 260, 258,
                257, 257, 259, 256, 257, 259, 260, 262, 263, 266, 269, 272, 278, 281, 289, 297, 305, 321, 346, 327, 312,
                302, 296, 288, 284, 276, 271, 269, 266, 263, 263, 259, 258, 257, 258, 256, 256, 257, 260, 260, 261, 262,
                264, 270, 272, 276, 281, 289, 295, 308, 319, 349, 326, 313, 302, 297, 288, 281, 279, 271, 269, 265, 263,
                262, 260, 258, 256, 256, 257, 257, 258, 257, 258, 260, 262, 266, 268, 272, 277, 283, 289, 297, 305, 320,
                344, 329, 313, 302, 298, 288, 282, 278, 272, 269, 265, 264, 261, 261, 259, 257, 257, 256, 257, 257, 259,
                260, 261, 262, 264, 267, 273, 278, 282, 289, 297, 306, 322, 346, 329, 313, 302, 297, 288, 282, 277, 273,
                270, 264, 264, 262, 260, 259, 257, 257, 257, 256, 257, 257, 260, 261, 263, 265, 269, 273, 278, 281, 289,
                297, 309, 325, 350, 329, 314, 303, 297, 289, 282, 279, 273, 270, 264, 263, 261, 259, 259, 258, 256, 257,
                257, 257, 258, 258, 261, 263, 268, 269, 276, 279, 282, 289, 299, 309, 325, 351, 330, 315, 304, 297, 290,
                284, 278, 275, 269, 266, 263, 262, 260, 260, 258, 257, 258, 258, 258, 259, 260, 261, 263, 268, 270, 276,
                279, 284, 289, 299, 310, 328, 354, 335, 320, 305, 297, 291, 285, 279, 275, 269, 266, 263, 262, 260, 260,
                258, 258, 258, 257, 260, 260, 261, 262, 263, 266, 270, 277, 279, 284, 291, 300, 312, 329, 356, 336, 320,
                309, 298, 290, 288, 281, 274, 271, 268, 265, 263, 262, 260, 260, 257, 260, 258, 258, 261, 260, 261, 264,
                268, 272, 276, 281, 286, 291, 302, 313, 333, 363, 338, 322, 310, 300, 291, 288, 282, 277, 272, 268, 267,
                263, 261, 261, 261, 259, 259, 259, 261, 261, 261, 263, 265, 268, 272, 276, 281, 288, 293, 305, 316, 336,
                367, 342, 325, 312, 302, 293, 289, 282, 279, 272, 268, 265, 263, 263, 262, 261, 261, 260, 260, 261, 261,
                262, 264, 266, 271, 273, 279, 282, 291, 296, 308, 321, 338, 377, 348, 327, 313, 302, 297, 289, 286, 279,
                274, 271, 268, 265, 263, 261, 262, 260, 262, 260, 261, 261, 263, 266, 269, 271, 277, 280, 286, 291, 300,
                310, 326, 346, 386, 352, 332, 320, 308, 299, 291, 286, 281, 278, 272, 270, 268, 266, 264, 261, 262, 262,
                262, 262, 263, 264, 266, 270, 272, 278, 281, 288, 293, 302, 314, 330, 354, 390, 360, 337, 321, 310, 300,
                295, 289, 283, 278, 274, 270, 268, 265, 264, 263, 263, 262, 262, 263, 265, 268, 270, 272, 275, 280, 284,
                289, 297, 307, 319, 337, 366, 404, 366, 344, 327, 312, 302, 297, 291, 283, 279, 276, 272, 270, 267, 263,
                266, 263, 264, 263, 263, 268, 266, 271, 272, 277, 281, 284, 291, 299, 309, 324, 343, 373
            },
            /* GrGain */
            {
                433, 390, 356, 334, 320, 308, 301, 294, 290, 284, 279, 274, 273, 272, 270, 271, 269, 269, 272, 273, 276,
                278, 282, 286, 290, 296, 303, 311, 319, 335, 354, 382, 421, 418, 380, 350, 329, 316, 307, 298, 292, 286,
                283, 278, 274, 271, 270, 268, 268, 268, 268, 270, 271, 274, 277, 279, 281, 287, 291, 298, 307, 317, 329,
                347, 374, 406, 403, 369, 343, 324, 312, 302, 296, 289, 283, 278, 275, 272, 269, 268, 266, 266, 266, 266,
                267, 270, 270, 274, 276, 281, 285, 288, 296, 303, 311, 323, 343, 364, 394, 394, 360, 336, 320, 309, 300,
                293, 287, 281, 276, 273, 270, 267, 266, 265, 263, 264, 263, 265, 267, 269, 272, 275, 279, 282, 287, 294,
                301, 309, 318, 333, 356, 382, 381, 353, 330, 315, 305, 297, 293, 286, 279, 273, 272, 268, 265, 263, 263,
                262, 261, 263, 264, 266, 268, 270, 272, 275, 279, 284, 291, 298, 307, 315, 329, 346, 372, 372, 347, 329,
                313, 303, 295, 289, 283, 278, 274, 268, 266, 264, 263, 263, 260, 260, 261, 261, 263, 265, 268, 270, 274,
                279, 284, 289, 295, 303, 311, 324, 342, 362, 363, 343, 323, 309, 301, 293, 287, 282, 276, 272, 268, 264,
                263, 261, 262, 260, 261, 260, 261, 263, 264, 265, 268, 271, 276, 281, 286, 293, 300, 309, 321, 336, 358,
                360, 337, 321, 308, 298, 292, 285, 280, 275, 270, 267, 263, 261, 260, 260, 260, 259, 259, 260, 261, 263,
                265, 267, 271, 275, 280, 286, 291, 296, 307, 318, 331, 353, 354, 335, 317, 305, 298, 290, 284, 279, 273,
                270, 266, 263, 261, 260, 259, 259, 259, 258, 259, 260, 262, 264, 267, 269, 274, 278, 283, 290, 296, 305,
                315, 329, 349, 350, 330, 315, 303, 295, 290, 283, 277, 273, 268, 265, 263, 260, 259, 259, 258, 259, 258,
                259, 259, 262, 264, 266, 268, 273, 278, 284, 289, 295, 302, 314, 327, 343, 345, 329, 314, 303, 294, 287,
                283, 277, 273, 267, 264, 261, 260, 260, 259, 258, 258, 259, 258, 260, 261, 263, 264, 267, 270, 276, 281,
                286, 294, 302, 311, 323, 340, 344, 327, 313, 301, 295, 288, 281, 276, 272, 267, 264, 261, 260, 258, 259,
                257, 258, 258, 258, 259, 260, 261, 263, 265, 269, 275, 279, 286, 292, 299, 310, 321, 338, 344, 325, 312,
                301, 294, 286, 280, 275, 270, 268, 263, 260, 260, 258, 258, 256, 256, 258, 258, 259, 260, 262, 263, 266,
                269, 273, 278, 286, 291, 299, 308, 319, 336, 342, 324, 311, 301, 291, 286, 280, 275, 270, 268, 263, 262,
                260, 258, 257, 256, 256, 256, 258, 259, 260, 261, 263, 266, 270, 274, 280, 286, 291, 299, 308, 318, 336,
                340, 322, 309, 299, 291, 285, 281, 274, 269, 267, 264, 262, 260, 258, 257, 257, 256, 258, 259, 258, 260,
                261, 263, 265, 269, 274, 279, 284, 291, 298, 307, 317, 332, 337, 322, 309, 301, 291, 284, 280, 275, 270,
                268, 264, 262, 260, 258, 257, 256, 256, 258, 258, 258, 260, 261, 263, 265, 270, 275, 278, 284, 290, 298,
                306, 318, 332, 337, 322, 308, 300, 291, 284, 279, 274, 269, 265, 263, 261, 259, 259, 256, 256, 256, 256,
                258, 258, 260, 262, 263, 264, 269, 275, 276, 284, 290, 296, 307, 316, 330, 339, 321, 308, 300, 290, 284,
                279, 274, 269, 267, 263, 260, 260, 258, 256, 256, 256, 258, 258, 258, 259, 260, 261, 265, 269, 274, 278,
                283, 289, 296, 305, 316, 330, 337, 322, 308, 299, 291, 284, 278, 273, 269, 266, 263, 261, 260, 258, 257,
                256, 256, 256, 257, 258, 259, 261, 261, 265, 269, 273, 277, 283, 290, 295, 304, 315, 329, 338, 321, 308,
                298, 291, 284, 278, 273, 269, 266, 261, 262, 260, 259, 256, 256, 256, 256, 256, 258, 260, 260, 262, 264,
                268, 272, 276, 283, 290, 296, 305, 316, 329, 338, 322, 308, 298, 290, 284, 279, 273, 269, 266, 263, 262,
                259, 258, 256, 257, 256, 256, 256, 258, 260, 261, 263, 263, 268, 271, 277, 283, 290, 295, 305, 317, 330,
                341, 323, 308, 298, 291, 284, 279, 273, 269, 267, 262, 260, 259, 259, 258, 256, 256, 258, 258, 258, 259,
                261, 263, 265, 270, 272, 279, 283, 290, 296, 304, 317, 331, 341, 322, 310, 301, 291, 285, 278, 273, 269,
                266, 263, 262, 259, 259, 258, 257, 257, 258, 259, 258, 260, 262, 264, 265, 269, 274, 279, 284, 290, 297,
                307, 317, 332, 342, 324, 310, 301, 293, 286, 279, 274, 270, 265, 263, 261, 260, 259, 258, 257, 257, 258,
                258, 259, 260, 261, 263, 266, 270, 273, 279, 284, 291, 296, 307, 320, 334, 345, 327, 310, 301, 294, 287,
                280, 275, 271, 268, 264, 261, 260, 258, 258, 258, 259, 257, 259, 259, 260, 263, 264, 268, 271, 275, 280,
                285, 292, 298, 308, 321, 336, 345, 328, 314, 302, 294, 289, 282, 276, 271, 268, 265, 262, 261, 259, 259,
                258, 259, 258, 258, 260, 260, 262, 264, 268, 271, 276, 280, 285, 292, 298, 309, 322, 338, 349, 330, 315,
                303, 296, 289, 284, 278, 273, 268, 266, 264, 262, 260, 260, 259, 258, 259, 259, 260, 261, 262, 265, 268,
                273, 277, 282, 287, 294, 300, 310, 323, 343, 354, 335, 317, 307, 298, 291, 284, 279, 273, 270, 266, 264,
                263, 261, 260, 260, 259, 260, 260, 261, 262, 263, 265, 269, 274, 278, 283, 289, 295, 304, 314, 327, 346,
                359, 338, 322, 309, 300, 292, 286, 281, 276, 273, 268, 264, 264, 262, 261, 261, 261, 261, 261, 263, 263,
                264, 267, 269, 275, 280, 285, 290, 298, 306, 316, 331, 353, 368, 343, 323, 311, 302, 294, 288, 283, 278,
                273, 269, 266, 265, 263, 263, 262, 260, 262, 263, 263, 264, 267, 268, 274, 276, 281, 286, 293, 300, 308,
                320, 337, 357, 378, 349, 328, 315, 303, 296, 290, 285, 279, 275, 271, 268, 266, 265, 263, 263, 264, 264,
                263, 264, 268, 268, 271, 275, 278, 282, 289, 295, 302, 311, 323, 343, 365, 384, 354, 334, 317, 308, 301,
                293, 287, 282, 278, 273, 270, 268, 267, 265, 265, 264, 264, 265, 267, 268, 270, 273, 277, 280, 286, 290,
                297, 306, 315, 328, 347, 373, 400, 362, 337, 324, 311, 302, 295, 290, 284, 278, 274, 273, 270, 268, 265,
                265, 266, 267, 268, 268, 270, 272, 274, 279, 283, 288, 293, 300, 308, 319, 334, 356, 378
            },
            /* GbGain */
            {
                437, 391, 355, 333, 322, 309, 301, 292, 288, 283, 276, 275, 274, 271, 270, 270, 270, 271, 268, 272, 274,
                278, 281, 285, 290, 296, 303, 308, 319, 332, 355, 385, 426, 423, 380, 348, 330, 316, 305, 298, 292, 286,
                281, 276, 273, 272, 270, 268, 269, 267, 267, 269, 270, 273, 275, 278, 283, 287, 292, 299, 307, 315, 329,
                346, 373, 406, 406, 368, 344, 324, 313, 303, 296, 290, 282, 279, 276, 271, 268, 268, 268, 265, 265, 266,
                267, 268, 271, 274, 278, 280, 283, 287, 295, 303, 311, 322, 339, 362, 395, 391, 361, 336, 321, 310, 302,
                292, 288, 281, 276, 272, 269, 268, 266, 265, 265, 265, 264, 266, 267, 269, 270, 274, 278, 282, 286, 292,
                299, 309, 319, 333, 354, 382, 382, 353, 332, 317, 305, 297, 290, 284, 279, 275, 270, 268, 265, 264, 262,
                261, 262, 263, 264, 265, 267, 268, 271, 276, 280, 285, 291, 298, 304, 316, 329, 347, 370, 372, 348, 328,
                315, 303, 295, 290, 284, 278, 273, 269, 265, 264, 262, 260, 260, 260, 261, 261, 263, 266, 267, 270, 274,
                277, 283, 288, 294, 302, 311, 324, 341, 364, 365, 341, 323, 311, 301, 293, 286, 281, 276, 271, 267, 264,
                261, 261, 260, 261, 260, 260, 262, 262, 264, 266, 268, 271, 276, 280, 286, 292, 299, 309, 322, 336, 355,
                360, 338, 321, 309, 299, 292, 286, 280, 275, 270, 267, 264, 261, 260, 259, 259, 260, 259, 260, 261, 262,
                264, 267, 270, 275, 279, 285, 290, 299, 305, 318, 331, 351, 354, 333, 319, 305, 297, 290, 284, 279, 274,
                270, 267, 262, 260, 260, 260, 259, 258, 259, 259, 260, 263, 264, 266, 269, 273, 278, 283, 289, 296, 303,
                315, 328, 346, 351, 330, 316, 305, 296, 289, 284, 278, 272, 268, 266, 263, 260, 259, 259, 259, 258, 260,
                259, 260, 262, 264, 265, 268, 273, 277, 283, 289, 296, 302, 313, 325, 342, 348, 329, 315, 303, 297, 290,
                282, 278, 272, 268, 265, 263, 260, 259, 259, 258, 259, 258, 259, 259, 261, 262, 263, 268, 271, 276, 281,
                286, 292, 300, 310, 323, 339, 345, 326, 313, 302, 295, 287, 281, 276, 271, 267, 265, 262, 260, 259, 259,
                257, 258, 257, 258, 260, 260, 262, 264, 267, 269, 275, 280, 285, 292, 300, 310, 321, 336, 341, 325, 312,
                301, 292, 287, 281, 276, 270, 267, 263, 261, 259, 259, 257, 257, 258, 258, 258, 258, 260, 263, 263, 266,
                270, 273, 279, 284, 291, 298, 309, 319, 335, 344, 324, 310, 302, 292, 286, 280, 276, 270, 267, 264, 260,
                260, 259, 258, 257, 256, 257, 258, 259, 259, 260, 264, 265, 270, 274, 279, 285, 290, 297, 307, 318, 336,
                342, 324, 309, 300, 292, 285, 280, 276, 270, 267, 264, 261, 260, 258, 257, 256, 257, 257, 259, 259, 260,
                262, 263, 266, 269, 275, 278, 284, 290, 298, 307, 319, 334, 339, 323, 310, 301, 291, 286, 279, 275, 269,
                267, 264, 262, 259, 259, 258, 256, 257, 258, 259, 259, 260, 261, 263, 264, 270, 275, 279, 283, 290, 297,
                305, 316, 330, 339, 323, 309, 299, 291, 285, 279, 274, 270, 266, 263, 261, 260, 258, 257, 256, 257, 257,
                259, 258, 260, 260, 263, 263, 270, 274, 279, 284, 290, 297, 306, 316, 330, 338, 322, 309, 299, 291, 284,
                279, 274, 270, 266, 263, 261, 259, 259, 257, 257, 256, 257, 258, 258, 259, 260, 261, 265, 270, 274, 279,
                284, 289, 297, 304, 316, 329, 339, 322, 309, 299, 291, 284, 278, 273, 269, 265, 263, 261, 260, 258, 257,
                256, 256, 257, 257, 258, 259, 260, 263, 264, 268, 274, 277, 282, 290, 296, 303, 315, 331, 337, 323, 309,
                299, 292, 284, 280, 274, 269, 265, 263, 261, 260, 258, 257, 256, 257, 257, 257, 258, 259, 261, 263, 264,
                267, 273, 278, 282, 290, 296, 303, 314, 330, 340, 322, 310, 301, 291, 284, 279, 273, 269, 266, 264, 260,
                259, 259, 258, 257, 256, 256, 257, 257, 260, 262, 263, 264, 267, 272, 276, 284, 289, 296, 303, 316, 330,
                342, 323, 309, 300, 291, 285, 279, 275, 270, 266, 262, 261, 260, 259, 257, 258, 258, 256, 258, 259, 258,
                261, 264, 266, 269, 273, 277, 284, 289, 296, 305, 316, 330, 342, 324, 310, 301, 291, 285, 280, 274, 271,
                266, 263, 261, 260, 259, 258, 257, 257, 259, 259, 260, 261, 261, 263, 266, 270, 273, 278, 284, 290, 297,
                305, 317, 331, 342, 326, 311, 301, 293, 285, 281, 275, 271, 268, 263, 261, 260, 259, 258, 258, 258, 259,
                258, 259, 261, 262, 264, 266, 269, 274, 279, 284, 290, 296, 307, 317, 335, 344, 327, 312, 301, 294, 287,
                281, 275, 271, 268, 264, 261, 261, 259, 258, 258, 259, 259, 259, 259, 261, 262, 266, 267, 273, 275, 280,
                286, 291, 297, 308, 319, 333, 347, 329, 314, 303, 296, 289, 283, 277, 273, 268, 264, 263, 261, 260, 259,
                259, 258, 259, 260, 260, 262, 263, 265, 266, 272, 276, 280, 287, 292, 299, 308, 322, 337, 352, 331, 316,
                304, 296, 290, 283, 279, 274, 269, 266, 263, 261, 260, 260, 260, 259, 260, 260, 260, 261, 264, 264, 268,
                273, 277, 281, 287, 293, 301, 311, 324, 342, 355, 334, 317, 308, 297, 291, 285, 280, 274, 271, 267, 264,
                262, 263, 260, 260, 260, 260, 260, 261, 262, 265, 267, 269, 273, 278, 284, 290, 294, 302, 315, 329, 345,
                360, 338, 322, 309, 300, 293, 287, 282, 277, 273, 269, 265, 264, 263, 262, 261, 261, 261, 261, 263, 264,
                264, 268, 270, 275, 279, 285, 292, 298, 305, 316, 332, 349, 367, 344, 324, 312, 302, 296, 289, 284, 278,
                275, 270, 266, 265, 265, 264, 263, 262, 263, 262, 263, 265, 267, 268, 273, 278, 283, 287, 292, 300, 308,
                320, 337, 358, 375, 349, 329, 315, 307, 297, 292, 286, 281, 275, 271, 269, 267, 266, 265, 264, 264, 264,
                265, 265, 266, 269, 272, 276, 279, 283, 290, 296, 302, 311, 324, 344, 364, 390, 356, 333, 320, 309, 302,
                293, 288, 281, 279, 273, 270, 268, 266, 266, 265, 266, 266, 267, 266, 269, 271, 273, 278, 282, 287, 291,
                297, 305, 314, 328, 348, 376, 397, 365, 338, 324, 313, 303, 296, 290, 285, 279, 276, 273, 273, 268, 266,
                268, 267, 267, 268, 268, 271, 272, 279, 279, 284, 289, 293, 300, 307, 320, 335, 353, 384
            },
            /* BGain */
            {
                419, 382, 345, 322, 312, 298, 295, 288, 278, 277, 273, 271, 268, 268, 265, 264, 265, 263, 266, 265, 265,
                268, 273, 275, 276, 279, 288, 293, 302, 313, 333, 362, 393, 405, 366, 338, 319, 306, 297, 289, 284, 278,
                275, 272, 268, 266, 265, 264, 263, 262, 262, 263, 263, 265, 266, 273, 273, 274, 278, 284, 289, 300, 311,
                327, 352, 384, 389, 357, 331, 314, 303, 292, 287, 283, 277, 274, 270, 270, 265, 264, 262, 262, 262, 262,
                262, 263, 265, 266, 268, 272, 273, 274, 283, 288, 293, 304, 319, 341, 368, 378, 349, 327, 311, 298, 290,
                287, 283, 276, 271, 269, 265, 264, 262, 262, 261, 262, 261, 262, 262, 263, 265, 265, 270, 272, 275, 279,
                285, 291, 302, 316, 332, 358, 371, 344, 321, 306, 299, 288, 285, 279, 275, 270, 267, 265, 264, 262, 262,
                261, 260, 260, 262, 261, 262, 264, 266, 267, 271, 274, 278, 284, 288, 299, 311, 324, 348, 360, 337, 317,
                305, 296, 288, 283, 278, 274, 270, 266, 264, 262, 262, 260, 260, 260, 260, 260, 262, 262, 262, 265, 267,
                268, 274, 276, 283, 288, 296, 307, 320, 339, 353, 333, 315, 303, 296, 288, 282, 277, 273, 270, 265, 264,
                262, 258, 261, 260, 261, 260, 260, 260, 262, 262, 262, 266, 267, 271, 274, 279, 286, 294, 303, 317, 336,
                348, 328, 313, 300, 291, 287, 279, 276, 272, 268, 265, 262, 261, 262, 260, 260, 260, 258, 260, 261, 261,
                261, 263, 263, 266, 271, 274, 278, 285, 291, 300, 314, 330, 344, 327, 312, 300, 291, 286, 279, 276, 271,
                269, 265, 264, 262, 262, 260, 258, 260, 259, 261, 260, 262, 262, 262, 265, 268, 272, 274, 277, 285, 290,
                299, 312, 328, 341, 322, 307, 296, 290, 284, 281, 275, 271, 268, 265, 262, 262, 261, 259, 259, 260, 260,
                260, 260, 261, 261, 262, 263, 266, 270, 273, 277, 285, 288, 298, 310, 323, 335, 319, 309, 298, 288, 283,
                278, 274, 271, 266, 264, 263, 262, 260, 260, 260, 260, 260, 260, 260, 260, 262, 262, 265, 264, 270, 273,
                277, 283, 288, 297, 307, 319, 337, 318, 306, 296, 289, 284, 278, 274, 270, 267, 263, 262, 262, 261, 261,
                259, 260, 260, 260, 260, 260, 260, 262, 262, 264, 270, 273, 275, 279, 288, 296, 306, 317, 336, 317, 303,
                296, 288, 283, 277, 274, 271, 268, 264, 264, 262, 261, 259, 259, 259, 259, 260, 260, 260, 261, 262, 263,
                263, 267, 273, 274, 279, 286, 293, 304, 316, 332, 318, 303, 293, 288, 283, 278, 274, 269, 267, 264, 264,
                262, 262, 260, 258, 260, 258, 260, 260, 261, 261, 262, 264, 264, 268, 269, 274, 281, 286, 292, 305, 315,
                333, 316, 302, 293, 287, 281, 276, 274, 271, 269, 265, 264, 262, 262, 258, 260, 258, 260, 257, 258, 260,
                261, 261, 262, 265, 265, 271, 275, 278, 285, 291, 302, 316, 332, 316, 302, 292, 287, 282, 276, 272, 268,
                264, 264, 262, 262, 262, 260, 261, 260, 261, 260, 260, 258, 261, 262, 262, 264, 266, 267, 274, 278, 286,
                290, 302, 315, 330, 314, 303, 293, 287, 283, 276, 274, 270, 266, 264, 264, 263, 262, 260, 258, 258, 259,
                260, 260, 260, 260, 259, 262, 264, 266, 270, 274, 277, 284, 290, 303, 314, 331, 313, 300, 291, 288, 281,
                275, 272, 267, 265, 264, 262, 262, 261, 257, 260, 258, 260, 261, 260, 260, 260, 260, 262, 264, 266, 268,
                273, 278, 284, 290, 301, 313, 330, 314, 301, 292, 286, 281, 275, 272, 266, 265, 263, 262, 263, 261, 258,
                259, 258, 258, 259, 259, 258, 260, 260, 262, 262, 265, 267, 271, 277, 282, 289, 300, 310, 333, 314, 300,
                291, 286, 282, 275, 273, 267, 266, 264, 263, 262, 262, 260, 258, 260, 258, 259, 260, 260, 260, 260, 261,
                263, 265, 266, 272, 277, 285, 289, 300, 314, 331, 313, 301, 292, 287, 279, 275, 271, 266, 265, 263, 262,
                262, 260, 256, 259, 256, 257, 256, 260, 258, 260, 261, 261, 263, 265, 266, 274, 276, 283, 289, 300, 312,
                333, 315, 303, 291, 287, 281, 275, 272, 267, 265, 263, 264, 262, 261, 261, 259, 256, 257, 260, 258, 260,
                260, 261, 262, 263, 265, 270, 274, 278, 283, 290, 302, 313, 331, 315, 302, 291, 287, 283, 276, 271, 268,
                266, 264, 262, 262, 261, 259, 257, 258, 260, 258, 256, 258, 261, 261, 262, 263, 266, 268, 273, 277, 284,
                288, 302, 316, 336, 316, 302, 295, 288, 280, 275, 273, 269, 265, 263, 262, 262, 261, 261, 258, 258, 258,
                258, 257, 258, 260, 262, 263, 263, 265, 270, 273, 278, 284, 291, 302, 317, 336, 317, 303, 296, 287, 283,
                276, 273, 269, 265, 264, 262, 261, 260, 260, 259, 260, 258, 258, 258, 260, 262, 262, 262, 264, 267, 270,
                274, 278, 283, 291, 305, 319, 339, 319, 304, 296, 288, 284, 278, 274, 270, 265, 265, 262, 263, 261, 259,
                261, 260, 260, 260, 258, 260, 261, 262, 262, 265, 265, 272, 275, 278, 286, 292, 304, 319, 338, 320, 306,
                298, 288, 283, 281, 274, 271, 267, 265, 264, 263, 261, 260, 260, 260, 260, 259, 260, 260, 260, 261, 262,
                265, 266, 272, 276, 279, 287, 296, 307, 322, 343, 323, 310, 300, 289, 285, 279, 275, 271, 268, 264, 264,
                262, 261, 260, 260, 259, 260, 257, 260, 260, 259, 260, 265, 265, 268, 273, 277, 279, 288, 297, 308, 330,
                347, 328, 312, 301, 291, 285, 283, 276, 272, 269, 264, 264, 263, 263, 261, 260, 260, 259, 258, 260, 261,
                262, 262, 263, 265, 268, 274, 278, 286, 289, 300, 314, 331, 357, 331, 314, 303, 292, 288, 281, 278, 274,
                268, 266, 265, 262, 262, 262, 262, 262, 261, 260, 261, 260, 262, 263, 264, 266, 271, 274, 278, 285, 292,
                303, 317, 337, 362, 337, 318, 306, 297, 289, 283, 279, 274, 269, 268, 264, 264, 262, 261, 260, 262, 260,
                261, 260, 262, 262, 264, 265, 269, 272, 274, 280, 288, 294, 305, 326, 344, 372, 344, 322, 309, 299, 288,
                285, 279, 275, 271, 269, 266, 265, 262, 263, 261, 261, 261, 262, 262, 262, 264, 265, 266, 272, 274, 277,
                283, 288, 300, 311, 330, 354, 382, 350, 329, 314, 299, 295, 288, 281, 276, 273, 271, 267, 264, 262, 262,
                262, 262, 262, 262, 264, 263, 263, 265, 271, 273, 275, 278, 288, 291, 300, 315, 333, 361
            },
        },
        /* LscGainLut[1] */
        {
            /* RGain */
            {
                446, 403, 366, 341, 325, 312, 302, 299, 291, 285, 280, 279, 276, 273, 272, 270, 269, 268, 268, 270, 272,
                274, 276, 281, 285, 288, 294, 301, 312, 324, 346, 377, 420, 437, 389, 357, 337, 320, 310, 301, 293, 289,
                281, 279, 276, 272, 271, 269, 267, 269, 268, 268, 269, 271, 272, 275, 279, 282, 287, 291, 298, 310, 319,
                336, 365, 399, 420, 380, 351, 332, 316, 306, 300, 291, 284, 280, 278, 273, 272, 270, 266, 266, 266, 264,
                265, 266, 269, 271, 272, 275, 279, 281, 290, 297, 303, 314, 333, 354, 382, 407, 369, 344, 325, 311, 302,
                297, 291, 283, 279, 275, 271, 269, 268, 267, 263, 264, 264, 264, 264, 266, 269, 270, 274, 277, 281, 287,
                291, 300, 312, 325, 344, 372, 393, 364, 337, 322, 310, 300, 294, 288, 281, 277, 273, 271, 268, 266, 265,
                262, 263, 261, 263, 264, 266, 268, 269, 273, 277, 281, 284, 288, 297, 307, 318, 338, 363, 382, 355, 335,
                320, 307, 300, 291, 288, 282, 277, 272, 270, 268, 265, 264, 262, 262, 261, 262, 263, 264, 265, 268, 272,
                273, 278, 281, 287, 294, 302, 315, 331, 354, 372, 350, 332, 314, 304, 299, 290, 284, 279, 275, 270, 269,
                265, 263, 262, 262, 262, 262, 262, 262, 264, 264, 267, 269, 272, 275, 280, 288, 291, 301, 313, 327, 348,
                370, 344, 326, 314, 302, 299, 290, 284, 279, 273, 270, 269, 264, 264, 262, 261, 261, 262, 262, 261, 262,
                264, 265, 268, 271, 277, 281, 285, 291, 297, 310, 323, 340, 365, 340, 324, 311, 301, 292, 289, 282, 278,
                273, 270, 267, 264, 262, 263, 261, 261, 262, 260, 262, 261, 263, 264, 269, 271, 273, 278, 283, 289, 297,
                305, 318, 337, 360, 338, 321, 310, 301, 293, 288, 281, 278, 273, 269, 267, 264, 262, 262, 260, 260, 260,
                259, 261, 261, 263, 263, 267, 271, 272, 278, 282, 289, 297, 307, 316, 333, 356, 336, 318, 309, 299, 292,
                286, 280, 275, 271, 269, 265, 264, 262, 262, 260, 259, 261, 260, 261, 261, 262, 263, 264, 269, 272, 278,
                282, 288, 293, 302, 315, 329, 353, 336, 317, 305, 298, 291, 285, 280, 278, 272, 268, 264, 263, 262, 261,
                261, 259, 260, 259, 261, 261, 261, 264, 265, 269, 272, 276, 281, 287, 293, 303, 313, 328, 351, 334, 315,
                305, 297, 290, 284, 279, 275, 270, 267, 264, 261, 261, 260, 259, 260, 258, 257, 260, 261, 262, 263, 264,
                268, 271, 275, 281, 286, 292, 301, 311, 327, 349, 334, 314, 303, 297, 289, 286, 279, 273, 271, 268, 265,
                263, 261, 260, 259, 259, 257, 258, 260, 260, 262, 263, 265, 268, 270, 274, 280, 287, 290, 299, 310, 327,
                350, 328, 314, 305, 298, 289, 283, 278, 273, 271, 268, 266, 262, 261, 260, 258, 258, 258, 257, 258, 260,
                262, 262, 264, 267, 271, 273, 279, 283, 291, 299, 310, 324, 349, 331, 313, 302, 297, 289, 284, 278, 275,
                270, 266, 265, 262, 261, 260, 258, 259, 257, 259, 258, 258, 261, 262, 262, 266, 270, 273, 279, 284, 289,
                298, 309, 323, 347, 327, 313, 303, 295, 289, 281, 278, 272, 270, 264, 264, 263, 261, 258, 258, 257, 257,
                257, 259, 258, 259, 260, 262, 266, 270, 272, 279, 284, 291, 298, 306, 322, 348, 326, 313, 301, 293, 288,
                281, 278, 272, 269, 266, 263, 263, 261, 260, 256, 257, 257, 257, 257, 258, 259, 260, 261, 266, 269, 272,
                278, 281, 289, 297, 308, 321, 349, 326, 312, 302, 295, 288, 281, 278, 271, 269, 265, 263, 262, 260, 258,
                257, 257, 259, 256, 257, 259, 260, 262, 263, 266, 269, 272, 278, 281, 289, 297, 305, 321, 346, 327, 312,
                302, 296, 288, 284, 276, 271, 269, 266, 263, 263, 259, 258, 257, 258, 256, 256, 257, 260, 260, 261, 262,
                264, 270, 272, 276, 281, 289, 295, 308, 319, 349, 326, 313, 302, 297, 288, 281, 279, 271, 269, 265, 263,
                262, 260, 258, 256, 256, 257, 257, 258, 257, 258, 260, 262, 266, 268, 272, 277, 283, 289, 297, 305, 320,
                344, 329, 313, 302, 298, 288, 282, 278, 272, 269, 265, 264, 261, 261, 259, 257, 257, 256, 257, 257, 259,
                260, 261, 262, 264, 267, 273, 278, 282, 289, 297, 306, 322, 346, 329, 313, 302, 297, 288, 282, 277, 273,
                270, 264, 264, 262, 260, 259, 257, 257, 257, 256, 257, 257, 260, 261, 263, 265, 269, 273, 278, 281, 289,
                297, 309, 325, 350, 329, 314, 303, 297, 289, 282, 279, 273, 270, 264, 263, 261, 259, 259, 258, 256, 257,
                257, 257, 258, 258, 261, 263, 268, 269, 276, 279, 282, 289, 299, 309, 325, 351, 330, 315, 304, 297, 290,
                284, 278, 275, 269, 266, 263, 262, 260, 260, 258, 257, 258, 258, 258, 259, 260, 261, 263, 268, 270, 276,
                279, 284, 289, 299, 310, 328, 354, 335, 320, 305, 297, 291, 285, 279, 275, 269, 266, 263, 262, 260, 260,
                258, 258, 258, 257, 260, 260, 261, 262, 263, 266, 270, 277, 279, 284, 291, 300, 312, 329, 356, 336, 320,
                309, 298, 290, 288, 281, 274, 271, 268, 265, 263, 262, 260, 260, 257, 260, 258, 258, 261, 260, 261, 264,
                268, 272, 276, 281, 286, 291, 302, 313, 333, 363, 338, 322, 310, 300, 291, 288, 282, 277, 272, 268, 267,
                263, 261, 261, 261, 259, 259, 259, 261, 261, 261, 263, 265, 268, 272, 276, 281, 288, 293, 305, 316, 336,
                367, 342, 325, 312, 302, 293, 289, 282, 279, 272, 268, 265, 263, 263, 262, 261, 261, 260, 260, 261, 261,
                262, 264, 266, 271, 273, 279, 282, 291, 296, 308, 321, 338, 377, 348, 327, 313, 302, 297, 289, 286, 279,
                274, 271, 268, 265, 263, 261, 262, 260, 262, 260, 261, 261, 263, 266, 269, 271, 277, 280, 286, 291, 300,
                310, 326, 346, 386, 352, 332, 320, 308, 299, 291, 286, 281, 278, 272, 270, 268, 266, 264, 261, 262, 262,
                262, 262, 263, 264, 266, 270, 272, 278, 281, 288, 293, 302, 314, 330, 354, 390, 360, 337, 321, 310, 300,
                295, 289, 283, 278, 274, 270, 268, 265, 264, 263, 263, 262, 262, 263, 265, 268, 270, 272, 275, 280, 284,
                289, 297, 307, 319, 337, 366, 404, 366, 344, 327, 312, 302, 297, 291, 283, 279, 276, 272, 270, 267, 263,
                266, 263, 264, 263, 263, 268, 266, 271, 272, 277, 281, 284, 291, 299, 309, 324, 343, 373
            },
            /* GrGain */
            {
                433, 390, 356, 334, 320, 308, 301, 294, 290, 284, 279, 274, 273, 272, 270, 271, 269, 269, 272, 273, 276,
                278, 282, 286, 290, 296, 303, 311, 319, 335, 354, 382, 421, 418, 380, 350, 329, 316, 307, 298, 292, 286,
                283, 278, 274, 271, 270, 268, 268, 268, 268, 270, 271, 274, 277, 279, 281, 287, 291, 298, 307, 317, 329,
                347, 374, 406, 403, 369, 343, 324, 312, 302, 296, 289, 283, 278, 275, 272, 269, 268, 266, 266, 266, 266,
                267, 270, 270, 274, 276, 281, 285, 288, 296, 303, 311, 323, 343, 364, 394, 394, 360, 336, 320, 309, 300,
                293, 287, 281, 276, 273, 270, 267, 266, 265, 263, 264, 263, 265, 267, 269, 272, 275, 279, 282, 287, 294,
                301, 309, 318, 333, 356, 382, 381, 353, 330, 315, 305, 297, 293, 286, 279, 273, 272, 268, 265, 263, 263,
                262, 261, 263, 264, 266, 268, 270, 272, 275, 279, 284, 291, 298, 307, 315, 329, 346, 372, 372, 347, 329,
                313, 303, 295, 289, 283, 278, 274, 268, 266, 264, 263, 263, 260, 260, 261, 261, 263, 265, 268, 270, 274,
                279, 284, 289, 295, 303, 311, 324, 342, 362, 363, 343, 323, 309, 301, 293, 287, 282, 276, 272, 268, 264,
                263, 261, 262, 260, 261, 260, 261, 263, 264, 265, 268, 271, 276, 281, 286, 293, 300, 309, 321, 336, 358,
                360, 337, 321, 308, 298, 292, 285, 280, 275, 270, 267, 263, 261, 260, 260, 260, 259, 259, 260, 261, 263,
                265, 267, 271, 275, 280, 286, 291, 296, 307, 318, 331, 353, 354, 335, 317, 305, 298, 290, 284, 279, 273,
                270, 266, 263, 261, 260, 259, 259, 259, 258, 259, 260, 262, 264, 267, 269, 274, 278, 283, 290, 296, 305,
                315, 329, 349, 350, 330, 315, 303, 295, 290, 283, 277, 273, 268, 265, 263, 260, 259, 259, 258, 259, 258,
                259, 259, 262, 264, 266, 268, 273, 278, 284, 289, 295, 302, 314, 327, 343, 345, 329, 314, 303, 294, 287,
                283, 277, 273, 267, 264, 261, 260, 260, 259, 258, 258, 259, 258, 260, 261, 263, 264, 267, 270, 276, 281,
                286, 294, 302, 311, 323, 340, 344, 327, 313, 301, 295, 288, 281, 276, 272, 267, 264, 261, 260, 258, 259,
                257, 258, 258, 258, 259, 260, 261, 263, 265, 269, 275, 279, 286, 292, 299, 310, 321, 338, 344, 325, 312,
                301, 294, 286, 280, 275, 270, 268, 263, 260, 260, 258, 258, 256, 256, 258, 258, 259, 260, 262, 263, 266,
                269, 273, 278, 286, 291, 299, 308, 319, 336, 342, 324, 311, 301, 291, 286, 280, 275, 270, 268, 263, 262,
                260, 258, 257, 256, 256, 256, 258, 259, 260, 261, 263, 266, 270, 274, 280, 286, 291, 299, 308, 318, 336,
                340, 322, 309, 299, 291, 285, 281, 274, 269, 267, 264, 262, 260, 258, 257, 257, 256, 258, 259, 258, 260,
                261, 263, 265, 269, 274, 279, 284, 291, 298, 307, 317, 332, 337, 322, 309, 301, 291, 284, 280, 275, 270,
                268, 264, 262, 260, 258, 257, 256, 256, 258, 258, 258, 260, 261, 263, 265, 270, 275, 278, 284, 290, 298,
                306, 318, 332, 337, 322, 308, 300, 291, 284, 279, 274, 269, 265, 263, 261, 259, 259, 256, 256, 256, 256,
                258, 258, 260, 262, 263, 264, 269, 275, 276, 284, 290, 296, 307, 316, 330, 339, 321, 308, 300, 290, 284,
                279, 274, 269, 267, 263, 260, 260, 258, 256, 256, 256, 258, 258, 258, 259, 260, 261, 265, 269, 274, 278,
                283, 289, 296, 305, 316, 330, 337, 322, 308, 299, 291, 284, 278, 273, 269, 266, 263, 261, 260, 258, 257,
                256, 256, 256, 257, 258, 259, 261, 261, 265, 269, 273, 277, 283, 290, 295, 304, 315, 329, 338, 321, 308,
                298, 291, 284, 278, 273, 269, 266, 261, 262, 260, 259, 256, 256, 256, 256, 256, 258, 260, 260, 262, 264,
                268, 272, 276, 283, 290, 296, 305, 316, 329, 338, 322, 308, 298, 290, 284, 279, 273, 269, 266, 263, 262,
                259, 258, 256, 257, 256, 256, 256, 258, 260, 261, 263, 263, 268, 271, 277, 283, 290, 295, 305, 317, 330,
                341, 323, 308, 298, 291, 284, 279, 273, 269, 267, 262, 260, 259, 259, 258, 256, 256, 258, 258, 258, 259,
                261, 263, 265, 270, 272, 279, 283, 290, 296, 304, 317, 331, 341, 322, 310, 301, 291, 285, 278, 273, 269,
                266, 263, 262, 259, 259, 258, 257, 257, 258, 259, 258, 260, 262, 264, 265, 269, 274, 279, 284, 290, 297,
                307, 317, 332, 342, 324, 310, 301, 293, 286, 279, 274, 270, 265, 263, 261, 260, 259, 258, 257, 257, 258,
                258, 259, 260, 261, 263, 266, 270, 273, 279, 284, 291, 296, 307, 320, 334, 345, 327, 310, 301, 294, 287,
                280, 275, 271, 268, 264, 261, 260, 258, 258, 258, 259, 257, 259, 259, 260, 263, 264, 268, 271, 275, 280,
                285, 292, 298, 308, 321, 336, 345, 328, 314, 302, 294, 289, 282, 276, 271, 268, 265, 262, 261, 259, 259,
                258, 259, 258, 258, 260, 260, 262, 264, 268, 271, 276, 280, 285, 292, 298, 309, 322, 338, 349, 330, 315,
                303, 296, 289, 284, 278, 273, 268, 266, 264, 262, 260, 260, 259, 258, 259, 259, 260, 261, 262, 265, 268,
                273, 277, 282, 287, 294, 300, 310, 323, 343, 354, 335, 317, 307, 298, 291, 284, 279, 273, 270, 266, 264,
                263, 261, 260, 260, 259, 260, 260, 261, 262, 263, 265, 269, 274, 278, 283, 289, 295, 304, 314, 327, 346,
                359, 338, 322, 309, 300, 292, 286, 281, 276, 273, 268, 264, 264, 262, 261, 261, 261, 261, 261, 263, 263,
                264, 267, 269, 275, 280, 285, 290, 298, 306, 316, 331, 353, 368, 343, 323, 311, 302, 294, 288, 283, 278,
                273, 269, 266, 265, 263, 263, 262, 260, 262, 263, 263, 264, 267, 268, 274, 276, 281, 286, 293, 300, 308,
                320, 337, 357, 378, 349, 328, 315, 303, 296, 290, 285, 279, 275, 271, 268, 266, 265, 263, 263, 264, 264,
                263, 264, 268, 268, 271, 275, 278, 282, 289, 295, 302, 311, 323, 343, 365, 384, 354, 334, 317, 308, 301,
                293, 287, 282, 278, 273, 270, 268, 267, 265, 265, 264, 264, 265, 267, 268, 270, 273, 277, 280, 286, 290,
                297, 306, 315, 328, 347, 373, 400, 362, 337, 324, 311, 302, 295, 290, 284, 278, 274, 273, 270, 268, 265,
                265, 266, 267, 268, 268, 270, 272, 274, 279, 283, 288, 293, 300, 308, 319, 334, 356, 378
            },
            /* GbGain */
            {
                437, 391, 355, 333, 322, 309, 301, 292, 288, 283, 276, 275, 274, 271, 270, 270, 270, 271, 268, 272, 274,
                278, 281, 285, 290, 296, 303, 308, 319, 332, 355, 385, 426, 423, 380, 348, 330, 316, 305, 298, 292, 286,
                281, 276, 273, 272, 270, 268, 269, 267, 267, 269, 270, 273, 275, 278, 283, 287, 292, 299, 307, 315, 329,
                346, 373, 406, 406, 368, 344, 324, 313, 303, 296, 290, 282, 279, 276, 271, 268, 268, 268, 265, 265, 266,
                267, 268, 271, 274, 278, 280, 283, 287, 295, 303, 311, 322, 339, 362, 395, 391, 361, 336, 321, 310, 302,
                292, 288, 281, 276, 272, 269, 268, 266, 265, 265, 265, 264, 266, 267, 269, 270, 274, 278, 282, 286, 292,
                299, 309, 319, 333, 354, 382, 382, 353, 332, 317, 305, 297, 290, 284, 279, 275, 270, 268, 265, 264, 262,
                261, 262, 263, 264, 265, 267, 268, 271, 276, 280, 285, 291, 298, 304, 316, 329, 347, 370, 372, 348, 328,
                315, 303, 295, 290, 284, 278, 273, 269, 265, 264, 262, 260, 260, 260, 261, 261, 263, 266, 267, 270, 274,
                277, 283, 288, 294, 302, 311, 324, 341, 364, 365, 341, 323, 311, 301, 293, 286, 281, 276, 271, 267, 264,
                261, 261, 260, 261, 260, 260, 262, 262, 264, 266, 268, 271, 276, 280, 286, 292, 299, 309, 322, 336, 355,
                360, 338, 321, 309, 299, 292, 286, 280, 275, 270, 267, 264, 261, 260, 259, 259, 260, 259, 260, 261, 262,
                264, 267, 270, 275, 279, 285, 290, 299, 305, 318, 331, 351, 354, 333, 319, 305, 297, 290, 284, 279, 274,
                270, 267, 262, 260, 260, 260, 259, 258, 259, 259, 260, 263, 264, 266, 269, 273, 278, 283, 289, 296, 303,
                315, 328, 346, 351, 330, 316, 305, 296, 289, 284, 278, 272, 268, 266, 263, 260, 259, 259, 259, 258, 260,
                259, 260, 262, 264, 265, 268, 273, 277, 283, 289, 296, 302, 313, 325, 342, 348, 329, 315, 303, 297, 290,
                282, 278, 272, 268, 265, 263, 260, 259, 259, 258, 259, 258, 259, 259, 261, 262, 263, 268, 271, 276, 281,
                286, 292, 300, 310, 323, 339, 345, 326, 313, 302, 295, 287, 281, 276, 271, 267, 265, 262, 260, 259, 259,
                257, 258, 257, 258, 260, 260, 262, 264, 267, 269, 275, 280, 285, 292, 300, 310, 321, 336, 341, 325, 312,
                301, 292, 287, 281, 276, 270, 267, 263, 261, 259, 259, 257, 257, 258, 258, 258, 258, 260, 263, 263, 266,
                270, 273, 279, 284, 291, 298, 309, 319, 335, 344, 324, 310, 302, 292, 286, 280, 276, 270, 267, 264, 260,
                260, 259, 258, 257, 256, 257, 258, 259, 259, 260, 264, 265, 270, 274, 279, 285, 290, 297, 307, 318, 336,
                342, 324, 309, 300, 292, 285, 280, 276, 270, 267, 264, 261, 260, 258, 257, 256, 257, 257, 259, 259, 260,
                262, 263, 266, 269, 275, 278, 284, 290, 298, 307, 319, 334, 339, 323, 310, 301, 291, 286, 279, 275, 269,
                267, 264, 262, 259, 259, 258, 256, 257, 258, 259, 259, 260, 261, 263, 264, 270, 275, 279, 283, 290, 297,
                305, 316, 330, 339, 323, 309, 299, 291, 285, 279, 274, 270, 266, 263, 261, 260, 258, 257, 256, 257, 257,
                259, 258, 260, 260, 263, 263, 270, 274, 279, 284, 290, 297, 306, 316, 330, 338, 322, 309, 299, 291, 284,
                279, 274, 270, 266, 263, 261, 259, 259, 257, 257, 256, 257, 258, 258, 259, 260, 261, 265, 270, 274, 279,
                284, 289, 297, 304, 316, 329, 339, 322, 309, 299, 291, 284, 278, 273, 269, 265, 263, 261, 260, 258, 257,
                256, 256, 257, 257, 258, 259, 260, 263, 264, 268, 274, 277, 282, 290, 296, 303, 315, 331, 337, 323, 309,
                299, 292, 284, 280, 274, 269, 265, 263, 261, 260, 258, 257, 256, 257, 257, 257, 258, 259, 261, 263, 264,
                267, 273, 278, 282, 290, 296, 303, 314, 330, 340, 322, 310, 301, 291, 284, 279, 273, 269, 266, 264, 260,
                259, 259, 258, 257, 256, 256, 257, 257, 260, 262, 263, 264, 267, 272, 276, 284, 289, 296, 303, 316, 330,
                342, 323, 309, 300, 291, 285, 279, 275, 270, 266, 262, 261, 260, 259, 257, 258, 258, 256, 258, 259, 258,
                261, 264, 266, 269, 273, 277, 284, 289, 296, 305, 316, 330, 342, 324, 310, 301, 291, 285, 280, 274, 271,
                266, 263, 261, 260, 259, 258, 257, 257, 259, 259, 260, 261, 261, 263, 266, 270, 273, 278, 284, 290, 297,
                305, 317, 331, 342, 326, 311, 301, 293, 285, 281, 275, 271, 268, 263, 261, 260, 259, 258, 258, 258, 259,
                258, 259, 261, 262, 264, 266, 269, 274, 279, 284, 290, 296, 307, 317, 335, 344, 327, 312, 301, 294, 287,
                281, 275, 271, 268, 264, 261, 261, 259, 258, 258, 259, 259, 259, 259, 261, 262, 266, 267, 273, 275, 280,
                286, 291, 297, 308, 319, 333, 347, 329, 314, 303, 296, 289, 283, 277, 273, 268, 264, 263, 261, 260, 259,
                259, 258, 259, 260, 260, 262, 263, 265, 266, 272, 276, 280, 287, 292, 299, 308, 322, 337, 352, 331, 316,
                304, 296, 290, 283, 279, 274, 269, 266, 263, 261, 260, 260, 260, 259, 260, 260, 260, 261, 264, 264, 268,
                273, 277, 281, 287, 293, 301, 311, 324, 342, 355, 334, 317, 308, 297, 291, 285, 280, 274, 271, 267, 264,
                262, 263, 260, 260, 260, 260, 260, 261, 262, 265, 267, 269, 273, 278, 284, 290, 294, 302, 315, 329, 345,
                360, 338, 322, 309, 300, 293, 287, 282, 277, 273, 269, 265, 264, 263, 262, 261, 261, 261, 261, 263, 264,
                264, 268, 270, 275, 279, 285, 292, 298, 305, 316, 332, 349, 367, 344, 324, 312, 302, 296, 289, 284, 278,
                275, 270, 266, 265, 265, 264, 263, 262, 263, 262, 263, 265, 267, 268, 273, 278, 283, 287, 292, 300, 308,
                320, 337, 358, 375, 349, 329, 315, 307, 297, 292, 286, 281, 275, 271, 269, 267, 266, 265, 264, 264, 264,
                265, 265, 266, 269, 272, 276, 279, 283, 290, 296, 302, 311, 324, 344, 364, 390, 356, 333, 320, 309, 302,
                293, 288, 281, 279, 273, 270, 268, 266, 266, 265, 266, 266, 267, 266, 269, 271, 273, 278, 282, 287, 291,
                297, 305, 314, 328, 348, 376, 397, 365, 338, 324, 313, 303, 296, 290, 285, 279, 276, 273, 273, 268, 266,
                268, 267, 267, 268, 268, 271, 272, 279, 279, 284, 289, 293, 300, 307, 320, 335, 353, 384
            },
            /* BGain */
            {
                419, 382, 345, 322, 312, 298, 295, 288, 278, 277, 273, 271, 268, 268, 265, 264, 265, 263, 266, 265, 265,
                268, 273, 275, 276, 279, 288, 293, 302, 313, 333, 362, 393, 405, 366, 338, 319, 306, 297, 289, 284, 278,
                275, 272, 268, 266, 265, 264, 263, 262, 262, 263, 263, 265, 266, 273, 273, 274, 278, 284, 289, 300, 311,
                327, 352, 384, 389, 357, 331, 314, 303, 292, 287, 283, 277, 274, 270, 270, 265, 264, 262, 262, 262, 262,
                262, 263, 265, 266, 268, 272, 273, 274, 283, 288, 293, 304, 319, 341, 368, 378, 349, 327, 311, 298, 290,
                287, 283, 276, 271, 269, 265, 264, 262, 262, 261, 262, 261, 262, 262, 263, 265, 265, 270, 272, 275, 279,
                285, 291, 302, 316, 332, 358, 371, 344, 321, 306, 299, 288, 285, 279, 275, 270, 267, 265, 264, 262, 262,
                261, 260, 260, 262, 261, 262, 264, 266, 267, 271, 274, 278, 284, 288, 299, 311, 324, 348, 360, 337, 317,
                305, 296, 288, 283, 278, 274, 270, 266, 264, 262, 262, 260, 260, 260, 260, 260, 262, 262, 262, 265, 267,
                268, 274, 276, 283, 288, 296, 307, 320, 339, 353, 333, 315, 303, 296, 288, 282, 277, 273, 270, 265, 264,
                262, 258, 261, 260, 261, 260, 260, 260, 262, 262, 262, 266, 267, 271, 274, 279, 286, 294, 303, 317, 336,
                348, 328, 313, 300, 291, 287, 279, 276, 272, 268, 265, 262, 261, 262, 260, 260, 260, 258, 260, 261, 261,
                261, 263, 263, 266, 271, 274, 278, 285, 291, 300, 314, 330, 344, 327, 312, 300, 291, 286, 279, 276, 271,
                269, 265, 264, 262, 262, 260, 258, 260, 259, 261, 260, 262, 262, 262, 265, 268, 272, 274, 277, 285, 290,
                299, 312, 328, 341, 322, 307, 296, 290, 284, 281, 275, 271, 268, 265, 262, 262, 261, 259, 259, 260, 260,
                260, 260, 261, 261, 262, 263, 266, 270, 273, 277, 285, 288, 298, 310, 323, 335, 319, 309, 298, 288, 283,
                278, 274, 271, 266, 264, 263, 262, 260, 260, 260, 260, 260, 260, 260, 260, 262, 262, 265, 264, 270, 273,
                277, 283, 288, 297, 307, 319, 337, 318, 306, 296, 289, 284, 278, 274, 270, 267, 263, 262, 262, 261, 261,
                259, 260, 260, 260, 260, 260, 260, 262, 262, 264, 270, 273, 275, 279, 288, 296, 306, 317, 336, 317, 303,
                296, 288, 283, 277, 274, 271, 268, 264, 264, 262, 261, 259, 259, 259, 259, 260, 260, 260, 261, 262, 263,
                263, 267, 273, 274, 279, 286, 293, 304, 316, 332, 318, 303, 293, 288, 283, 278, 274, 269, 267, 264, 264,
                262, 262, 260, 258, 260, 258, 260, 260, 261, 261, 262, 264, 264, 268, 269, 274, 281, 286, 292, 305, 315,
                333, 316, 302, 293, 287, 281, 276, 274, 271, 269, 265, 264, 262, 262, 258, 260, 258, 260, 257, 258, 260,
                261, 261, 262, 265, 265, 271, 275, 278, 285, 291, 302, 316, 332, 316, 302, 292, 287, 282, 276, 272, 268,
                264, 264, 262, 262, 262, 260, 261, 260, 261, 260, 260, 258, 261, 262, 262, 264, 266, 267, 274, 278, 286,
                290, 302, 315, 330, 314, 303, 293, 287, 283, 276, 274, 270, 266, 264, 264, 263, 262, 260, 258, 258, 259,
                260, 260, 260, 260, 259, 262, 264, 266, 270, 274, 277, 284, 290, 303, 314, 331, 313, 300, 291, 288, 281,
                275, 272, 267, 265, 264, 262, 262, 261, 257, 260, 258, 260, 261, 260, 260, 260, 260, 262, 264, 266, 268,
                273, 278, 284, 290, 301, 313, 330, 314, 301, 292, 286, 281, 275, 272, 266, 265, 263, 262, 263, 261, 258,
                259, 258, 258, 259, 259, 258, 260, 260, 262, 262, 265, 267, 271, 277, 282, 289, 300, 310, 333, 314, 300,
                291, 286, 282, 275, 273, 267, 266, 264, 263, 262, 262, 260, 258, 260, 258, 259, 260, 260, 260, 260, 261,
                263, 265, 266, 272, 277, 285, 289, 300, 314, 331, 313, 301, 292, 287, 279, 275, 271, 266, 265, 263, 262,
                262, 260, 256, 259, 256, 257, 256, 260, 258, 260, 261, 261, 263, 265, 266, 274, 276, 283, 289, 300, 312,
                333, 315, 303, 291, 287, 281, 275, 272, 267, 265, 263, 264, 262, 261, 261, 259, 256, 257, 260, 258, 260,
                260, 261, 262, 263, 265, 270, 274, 278, 283, 290, 302, 313, 331, 315, 302, 291, 287, 283, 276, 271, 268,
                266, 264, 262, 262, 261, 259, 257, 258, 260, 258, 256, 258, 261, 261, 262, 263, 266, 268, 273, 277, 284,
                288, 302, 316, 336, 316, 302, 295, 288, 280, 275, 273, 269, 265, 263, 262, 262, 261, 261, 258, 258, 258,
                258, 257, 258, 260, 262, 263, 263, 265, 270, 273, 278, 284, 291, 302, 317, 336, 317, 303, 296, 287, 283,
                276, 273, 269, 265, 264, 262, 261, 260, 260, 259, 260, 258, 258, 258, 260, 262, 262, 262, 264, 267, 270,
                274, 278, 283, 291, 305, 319, 339, 319, 304, 296, 288, 284, 278, 274, 270, 265, 265, 262, 263, 261, 259,
                261, 260, 260, 260, 258, 260, 261, 262, 262, 265, 265, 272, 275, 278, 286, 292, 304, 319, 338, 320, 306,
                298, 288, 283, 281, 274, 271, 267, 265, 264, 263, 261, 260, 260, 260, 260, 259, 260, 260, 260, 261, 262,
                265, 266, 272, 276, 279, 287, 296, 307, 322, 343, 323, 310, 300, 289, 285, 279, 275, 271, 268, 264, 264,
                262, 261, 260, 260, 259, 260, 257, 260, 260, 259, 260, 265, 265, 268, 273, 277, 279, 288, 297, 308, 330,
                347, 328, 312, 301, 291, 285, 283, 276, 272, 269, 264, 264, 263, 263, 261, 260, 260, 259, 258, 260, 261,
                262, 262, 263, 265, 268, 274, 278, 286, 289, 300, 314, 331, 357, 331, 314, 303, 292, 288, 281, 278, 274,
                268, 266, 265, 262, 262, 262, 262, 262, 261, 260, 261, 260, 262, 263, 264, 266, 271, 274, 278, 285, 292,
                303, 317, 337, 362, 337, 318, 306, 297, 289, 283, 279, 274, 269, 268, 264, 264, 262, 261, 260, 262, 260,
                261, 260, 262, 262, 264, 265, 269, 272, 274, 280, 288, 294, 305, 326, 344, 372, 344, 322, 309, 299, 288,
                285, 279, 275, 271, 269, 266, 265, 262, 263, 261, 261, 261, 262, 262, 262, 264, 265, 266, 272, 274, 277,
                283, 288, 300, 311, 330, 354, 382, 350, 329, 314, 299, 295, 288, 281, 276, 273, 271, 267, 264, 262, 262,
                262, 262, 262, 262, 264, 263, 263, 265, 271, 273, 275, 278, 288, 291, 300, 315, 333, 361
            },
        },
    },

    /* ISP_BNR_LSC_CALIB_TABLE_S */
    {
        /* RGain */
        {
            4112, 4104, 4096, 4104, 4120, 4112, 4112, 4137, 4145, 4145, 4162, 4162, 4179, 4170, 4170, 4196, 4196,
            4187, 4205, 4213, 4205, 4231, 4239, 4248, 4257, 4266, 4275, 4266, 4284, 4293, 4320, 4320, 4347, 4329,
            4338, 4347, 4366, 4384, 4366, 4384, 4422, 4403, 4432, 4441, 4441, 4461, 4480, 4432, 4490, 4480, 4500,
            4520, 4510, 4560, 4570, 4580, 4601, 4590, 4580, 4601, 4611, 4632, 4611, 4653, 4685, 4674, 4706, 4728,
            4728, 4761, 4728, 4685, 4761, 4805, 4839, 4817, 4828, 4817, 4839, 4874, 4874, 4932, 4921, 4992, 4992,
            4980, 4968, 5042, 5054, 5104, 5066, 5079, 5169, 5117, 5195, 5208, 5221, 5302, 5234, 5275, 5371, 5400,
            5414, 5414, 5443, 5414, 5591, 5531, 5622, 5668, 5684, 5684, 5716, 5764, 5813, 5930, 5930, 5982, 6053,
            6089, 6144, 6125, 6275, 6372, 6372, 6453, 6473, 6577, 6556
        },
        /* GrGain */
        {
            4096, 4096, 4096, 4105, 4119, 4128, 4123, 4142, 4137, 4147, 4166, 4170, 4166, 4170, 4161, 4170, 4185,
            4175, 4204, 4209, 4209, 4233, 4233, 4248, 4248, 4258, 4288, 4303, 4298, 4314, 4314, 4350, 4344, 4365,
            4365, 4371, 4381, 4408, 4397, 4402, 4429, 4440, 4467, 4451, 4478, 4494, 4511, 4506, 4517, 4545, 4556,
            4573, 4568, 4602, 4585, 4614, 4626, 4626, 4632, 4602, 4643, 4697, 4685, 4734, 4715, 4709, 4784, 4740,
            4759, 4796, 4790, 4867, 4841, 4854, 4847, 4847, 4860, 4899, 4899, 4932, 4953, 4932, 4973, 4993, 5014,
            5007, 5063, 5091, 5063, 5120, 5170, 5163, 5163, 5185, 5245, 5245, 5275, 5329, 5306, 5384, 5392, 5400,
            5449, 5481, 5506, 5531, 5582, 5574, 5643, 5678, 5696, 5749, 5777, 5842, 5898, 5917, 5956, 5976, 6106,
            6085, 6168, 6231, 6285, 6373, 6362, 6429, 6463, 6580, 6676
        },
        /* GbGain */
        {
            4096, 4109, 4123, 4105, 4133, 4128, 4133, 4137, 4151, 4161, 4161, 4161, 4170, 4175, 4180, 4185, 4204,
            4204, 4209, 4218, 4223, 4243, 4248, 4253, 4273, 4278, 4303, 4308, 4318, 4323, 4313, 4328, 4359, 4370,
            4380, 4385, 4385, 4396, 4428, 4433, 4433, 4433, 4466, 4482, 4477, 4488, 4521, 4515, 4538, 4538, 4538,
            4543, 4572, 4577, 4606, 4595, 4624, 4630, 4653, 4665, 4665, 4683, 4689, 4695, 4689, 4756, 4737, 4719,
            4775, 4775, 4812, 4806, 4819, 4851, 4890, 4864, 4903, 4909, 4890, 4962, 4956, 4976, 5003, 5024, 5024,
            5066, 5031, 5108, 5094, 5130, 5108, 5173, 5188, 5203, 5262, 5293, 5285, 5293, 5371, 5394, 5394, 5402,
            5434, 5500, 5575, 5533, 5575, 5653, 5679, 5670, 5751, 5742, 5760, 5833, 5852, 5899, 5947, 5976, 6065,
            6137, 6147, 6284, 6295, 6284, 6405, 6439, 6555, 6602, 6674
        },
        /* BGain */
        {
            4096, 4117, 4106, 4140, 4140, 4140, 4151, 4128, 4140, 4162, 4151, 4162, 4173, 4162, 4162, 4162, 4173,
            4185, 4185, 4185, 4196, 4219, 4207, 4207, 4207, 4231, 4219, 4219, 4242, 4254, 4266, 4266, 4289, 4289,
            4289, 4266, 4289, 4326, 4326, 4301, 4338, 4350, 4338, 4350, 4400, 4387, 4400, 4412, 4387, 4400, 4425,
            4425, 4451, 4425, 4477, 4464, 4451, 4516, 4464, 4516, 4503, 4529, 4516, 4570, 4597, 4529, 4570, 4583,
            4583, 4624, 4624, 4638, 4624, 4638, 4652, 4724, 4709, 4738, 4709, 4724, 4753, 4768, 4709, 4812, 4812,
            4827, 4827, 4858, 4920, 4904, 4920, 4889, 4952, 4968, 5032, 5016, 5049, 5099, 5150, 5099, 5133, 5150,
            5185, 5220, 5292, 5310, 5347, 5347, 5403, 5384, 5442, 5422, 5539, 5559, 5580, 5704, 5704, 5704, 5768,
            5833, 5855, 6039, 5969, 6063, 6063, 6185, 6235, 6364, 6260
        },
    },

};

static const ISP_CMOS_CLUT_S g_stIspCLUT = {
    1,
    512,
    512,
    512,

    {
        {
            0,          3149813,    1046533,    3149814,    6299621,    9450452,    6299622,    9450451,    12602304,
            16802729,   12602303,   16803752,   22052752,   26255221,   21005198,   25206643,   30457689,   35708733,
            29409112,   32563005,   39910177,   45161223,   35714854,   38866705,   49362669,   54612692,   42017535,
            45168367,   60912311,   68261528,   48319196,   52519622,   75610743,   3149814,    57769646,   4198390,
            2095110,    9451475,    3143687,    9451474,    6299621,    15755175,   6300644,    14706598,   12603326,
            23110515,   11554749,   21012342,   19956621,   29416257,   17859470,   25219913,   26263385,   32572189,
            23116638,   26276652,   31519533,   34675465,   26273592,   25232160,   33624849,   37828337,   26279717,
            24187669,   35727104,   5246965,    24184604,   6295538,    39930592,   9451473,    25238283,   9451472,
            4192261,    13658024,   6290435,    11559850,   7349219,    17865595,   7349218,    14716804,   11554749,
            19973973,   10506174,   14727012,   15761298,   18932542,   13663127,   11587410,   18920295,   15788854,
            14722931,   7395148,    19978055,   12645170,   13681497,   2153291,    17884985,   8393711,    9491278,
            9443307,    14741301,   9451472,    4249419,    8402896,    11597614,   9461678,    1072749387, 7363507,
            7341055,    10520463,   10487801,   6323098,    8398816,    8430453,    9447390,    2134918,    9456575,
            4241254,    8408001,    1070637947, 10515358,   1071693666, 7367590,    1063299959, 9475969,    1065403234,
            4229007,    1054911353, 6336364,    11541479,   39808,      12591075,   1097571,    8402896,    1067493240,
            8402896,    1068548962, 5264313,    1059105655, 3166143,    1061208932, 2125734,    1050717050, 1071670194,
            12586995,   1070629783, 14685164,   1064333224, 9448411,    1063292815, 10496985,   1054899107, 7358404,
            1053856653, 6308808,    1045462946, 4219823,    1044420494, 1071032,    1034977187, 1072723870, 12592094,
            1068525484, 12593114,   1066436498, 7354321,    1060140965, 6304722,    1059099533, 2115526,    1050704802,
            16333,      1049663373, 1067471805, 1040220066, 1063274441, 1040226191, 1058037688, 1029734309, 1052790727,
            15735781,   1047553974, 15737822,   1040208840, 10498007,   1037068214, 9449430,    1027625931, 4210635,
            1025534905, 3161039,    1015043022, 1071665089, 11545558,   1068516298, 9449426,    1063279546, 5256147,
            1058032584, 4207572,    1052795830, 1071658963, 1046499271, 1069560794, 1042311094, 1059077076, 1033917385,
            1055929311, 1030777783, 1046495190, 1021334477, 1041248229, 1019243450, 1032863706, 1008751568, 1025519596,
            14690264,   1019232223, 11546577,   1010838515, 8400852,    1005600740, 6303699,    996157434,  2111443,
            6304718,    1061847,    3160010,    1065368531, 2109398,    1062220764, 1060823,    1052786645, 1067461600,
            1048588258, 1065362407, 1040203736, 1051731946, 1033908201, 1047534581, 1026572253, 1034952692, 1018178543,
            1029705730, 1012940770, 1019223038, 1003498487, 1011877903, 998260711,  1002443783, 987768830,  994050075,
            8402891,    974131202,  4209605,    946862085,  4207569,    15302,      2110416,    1071641611, 1060827,
            11225,      11232,      2102257,    1059071973, 1063264237, 1056972782, 8402898,    1043342319, 1043336192,
            1038096380, 16801708,   1026564089, 1023410193, 1020267529, 26254200,   1010832386, 1005581344, 1002439701,
            36754246,   985665539,  986704943,  985660448,  45154078,   961547264,  966778940,  931132416,  55650040,
            17343,      1070593036, 1068492823, 1073739785, 13263,      2102257,    2046,       3151855,    9188,
            8401877,    5252066,    8403918,    1053825015, 15751092,   12602304,   15756196,   1033896968, 27300735,
            21003156,   22060919,   1015019545, 40949569,   31504222,   26263385,   996143144,  54595340,   40953649,
            28366660,   977266741,  67192538,   50402060,   32567088,   899670016,  1072690186, 59850468,   2096132,
            1067443224, 3151856,    1071638548, 3151853,    1072694271, 8402896,    1050621,    7355341,    5252067,
            16803749,   5253088,    10511275,   11551685,   25207666,   11555770,   12617612,   19951519,   31509326,
            18908045,   12624758,   34649951,   36760369,   24162150,   12628840,   47248165,   43059989,   27316045,
            11583326,   60893939,   1046535,    30466874,   5244924,    73491137,   3151854,    33618724,   4202471,
            1069541398, 8403917,    1044494,    4209616,    0,          12609447,   2100217,    4216760,    5253089,
            17863553,   5254110,    3174308,    12603324,   19968871,   8409020,    33686,      21006220,   21022550,
            11564955,   1069584269, 28358495,   21026632,   12621696,   1065392006, 34659134,   3145728,    12626799,
            8392690,    39910180,   4201450,    11582307,   5252067,    47258373,   6306766,    10536792,   2111445,
            1072688146, 7364529,    6289414,    1071663047, 1050619,    7371672,    4199410,    1066424253, 5253087,
            6329222,    4205532,    1060135861, 10507194,   4235131,    4212676,    1052797872, 15761299,   1092466,
            3171246,    1045458861, 18916210,   6294519,    1079197,    9443304,    19970910,   5251045,    1071679377,
            4203489,    21024591,   3160018,    1067488137, 1072705499, 22077248,   1068992,    1062247300, 1064318935,
            3142667,    1071670193, 9438202,    1055932372, 3149814,    1066431398, 6297579,    1046496211, 5254109,
            1061190559, 3156956,    1037060051, 6310847,    1054901146, 16334,      1026575315, 7368612,    9442285,
            1068519362, 7347165,    7374734,    5252066,    1063279544, 3154911,    5282688,    1061848,    1056991154,
            1069557731, 2140022,    1068515279, 1049653166, 1058023398, 1072738159, 1061178312, 1042314156, 1045440491,
            8387584,    1053840324, 11538412,   1032857583, 6296558,    1045452737, 7347172,    1020274676, 4205532,
            1036017600, 2108382,    1007690746, 2114504,    8395747,    1068512217, 3154899,    1072716728, 4203488,
            1060125653, 1057757,    1069575083, 1071655903, 1051739091, 1067458538, 1064335266, 1061171167, 1042302930,
            1051727861, 1058045852, 1050686431, 1031817171, 1035996161, 1052805016, 1040200673, 1022381012, 1020266508,
            11537395,   1028667364, 9444317,    1004535830, 7347175,    1017133030, 5251038,    963636228,  3156957,
            5251032,    1058785,    1064295459, 1071659987, 2106334,    1064314852, 1070592014, 1064323019, 1068508134,
            1051731944, 2100215,    1056985030, 1054875630, 1039149037, 9448410,    1049647042, 1041243126, 1026566130,
            20996013,   1041259457, 1026562045, 1013982199, 33592188,   1031823296, 1012928517, 1001399292, 46187343,
            11539429,   988809218,  4203471,    58781478,   6299617,    10190,      2106328,    1067442205, 1058783,
            9181,       9188,       1071641610, 1066414047, 1065360366, 1059068912, 2102258,    1055929311, 1047531517,
            1043338235, 9451474,    1045443552, 1030751244, 1027607558, 16801708,   1033910242, 1015019546, 1011876881,
            25200521,   1023424485, 997191719,  998243355,  32549738,   1011890152, 980412467,  950002688,  39896909,
            7348182,    1063245862, 1061146670, 1070589974, 4203483,    1069543440, 1067443224, 1073740805, 9186,
            1050619,    1073740803, 2103278,    1061168106, 9447392,    5250026,    6305745,    1047535602, 22043568,
            14697413,   10509236,   1033903098, 37787511,   27293589,   14710683,   1019220993, 53530435,   39889765,
            16813958,   999296002,  69272339,   52484923,   19964786,   977273856,  1065344032, 65078035,   1044493,
            10184,      1071641612, 1064293415, 1050621,    9173,       2101236,    1069542420, 1055723,    9190,
            9450453,    1023,       2110422,    1056970741, 18898860,   5252067,    3165122,    1039140868, 29396866,
            13650879,   3170225,    1023409171, 39892828,   21001114,   2126754,    1005581344, 49339194,   28350329,
            1082261,    988802093,  1068491802, 35699547,   5240834,    920635392,  1072691207, 43046719,   2101238,
            1059048498, 2103280,    1069539358, 8169,       1066394651, 8402896,    1071640589, 1071656925, 1072692229,
            14704559,   3066,       1068514257, 5249007,    19955601,   4204512,    1064324039, 14695371,   25205624,
            8408002,    1061181375, 30439316,   29407072,   12609447,   1056989111, 46183260,   1072688145, 15762320,
            6293494,    60877610,   1,          18913148,   3150831,    76618492,   2104300,    22065001,   1072701418,
            1063244842, 5257171,    1042452,    1066412005, 1068492822, 7361467,    1046533,    1059074016, 1072693249,
            8416166,    1052661,    1052783581, 5251046,    9469844,    2107360,    1045445594, 14698433,   10523524,
            3162060,    1038106584, 24147862,   3142664,    3168185,    6294505,    34644847,   1051642,    2124713,
            2103273,    44092235,   1055722,    2128796,    1070603243, 53538601,   13273,      1083279,    1061167085,
            1066392610, 1072710601, 6288392,    1050681328, 1070590993, 1070618556, 3146748,    1040195571, 0,
            1068524464, 1054704,    1030758390, 5253089,    1066430374, 1072703459, 1020272633, 11553728,   5243900,
            1069561815, 3150812,    16805792,   2101235,    1066419148, 1055716,    22056836,   1072701417, 1063276483,
            1068506093, 27305836,   1068510177, 1059085243, 1054873590, 32555860,   1064318937, 1054894004, 1042288639,
            1071637529, 1059078098, 9437177,    1028655112, 1073738762, 1052788685, 4197363,    1015021585, 1051640,
            1047547848, 1054701,    981459971,  3155936,    6294511,    1069556711, 1054849090, 6309830,    3150828,
            1063267298, 1063243820, 8413104,    1071652843, 1055929311, 1070589975, 9467805,    1063265257, 1049638876,
            5244924,    10521484,   1054877672, 1042300889, 17837015,   11574140,   1046490088, 1034961879, 33577899,
            3140623,    1038102504, 7342057,    48270206,   3144705,    1029713897, 4199401,    64010067,   1053682,
            4198370,    1055722,    1059046454, 10209,      2103271,    1065361388, 1065343012, 15313,      1069554668,
            1055924207, 1072689168, 1071665090, 1058020338, 1045438449, 5245942,    1069570998, 1046484984, 1036001268,
            14692311,   1067477931, 1034949630, 1025515512, 25187252,   1064335266, 1022365700, 1015029755, 35683216,
            8386561,    1003488257, 3149785,    46178158,   4196343,    6101,       2103263,    1064292394, 1054702,
            7137,       7145,       1068491802, 1070605285, 1067457518, 1062213618, 1072690186, 1066414045, 1052775419,
            1048581115, 3150835,    1061174229, 1037042695, 1034947588, 9449432,    1055933391, 1023409171, 1022362637,
            15748030,   1050692554, 1008727071, 1008730134, 22046628,   1044403142, 994044971,  969923584,  29393802,
            8389617,    1052750919, 1050652748, 1068489759, 4198382,    1061145649, 1059046455, 1070590994, 1055723,
            1070587931, 1067441185, 1072692227, 1067458538, 5243903,    2093066,    1053681,    1059070952, 19934168,
            11540459,   3156958,    1050683368, 36724647,   25183170,   6307786,    1042295784, 54563701,   40924053,
            8411064,    1033908200, 72402757,   56664936,   11561894,   1024472041, 1056948284, 71356221,   1073735699,
            6294497,    1064293416, 1055898688, 1073739784, 3150820,    1071639571, 1062195245, 1071646717, 7146,
            5245945,    1068491802, 1071650801, 1063263215, 16789463,   2096131,    1070605285, 1051727861, 29382575,
            9445351,    1069560793, 1040193531, 41976711,   19940293,   1068516301, 1028657153, 55618400,   30435234,
            1067470786, 1011877890, 1061145648, 40930175,   4191236,    994050048,  1067441183, 51425117,   1049598,
            5073,       1072689165, 1061144627, 1071648760, 6107,       4198388,    1066392609, 1067456498, 8168,
            12595159,   1070590995, 1063264237, 1060116468, 20991928,   1049599,    1059071975, 1045433345, 29389722,
            6299622,    1054879714, 1029701645, 37786492,   12599243,   1049637854, 1016068121, 1066391589, 18897841,
            5242869,    1001386021, 1069541398, 25196439,   2100212,    941603840,  1072691206, 32543613,   1070601204,
            1047504978, 2102258,    1067439142, 1063261173, 1056948284, 6302683,    1069540377, 1055922165, 1065343014,
            11552708,   1071641611, 1047533558, 1043470,    15753134,   3067,       1040194552, 11539437,   19953560,
            2105319,    1032854521, 28328896,   1071637529, 5257172,    2099173,    46167950,   1072689165, 7359425,
            1052650,    64007005,   1071644672, 10510255,   1069553649, 81846061,   1072699377, 12612509,   1059066871,
            1052750918, 10209,      1041432,    1048580094, 1061144626, 1063889,    1073737742, 1037043717, 1068490782,
            2116546,    1073740803, 1025508365, 2095111,    2120628,    1071648759, 999285763,  10492905,   3141644,
            1070604267, 1043305572, 22037443,   1047555,    1069558751, 1054846030, 35680155,   1071647738, 1069562835,
            1065337910, 48273267,   1069553649, 1067468744, 4186139,    61914957,   1066410985, 1066424253, 17826810,
            1059045433, 1064315872, 5238791,    34614226,   1064293416, 1061173208, 3144705,    52451240,   1069541399,
            1059079120, 2043,       70289276,   1048577,    5241852,    1069552629, 1049601108, 8396774,    1050617,
            1065360367, 1059043393, 16793544,   1070600182, 1061168106, 1067438124, 25191337,   1065359347, 1056975845,
            4188181,    33588107,   1059068913, 1051735008, 13633528,   41984877,   1053827055, 1047541723, 27274199,
            1064292397, 1047536621, 7338997,    39866291,   1068490781, 1041246187, 3147764,    54555535,   1071640591,
            4195309,    4084,       1055897668, 0,          1052655,    1066406900, 1062193204, 4202470,    1070601203,
            1059067893, 1069537315, 9452495,    1061164022, 1051727862, 3141647,    13652921,   1051726842, 1044388855,
            9440247,    17853347,   1042289662, 1036000248, 18884572,   22053773,   1032850434, 1028660218, 28328896,
            1070586911, 1018168321, 4194275,    37774244,   1071639571, 2013,       1051623,    1062193205, 1072691207,
            5093,       6125,       1066390567, 1072696313, 1069553647, 1064309748, 1070588953, 8169,       1056969721,
            1053823995, 1045513,    1061849,    1044383747, 1042286594, 5245942,    1065930,    1031798797, 1031799817,
            9446370,    2118587,    1020262423, 1020264465, 15743949,   3171245,    1007677474, 988796928,  20991929,
            3139600,    1040157805, 1038059632, 1068488740, 2094087,    1052746836, 1048551513, 1069540378, 1072694271,
            1065335867, 1060091970, 1070592015, 1070600182, 4185118,    1071632425, 1072692228, 1068506093, 19923963,
            11528202,   1072697335, 1065363428, 38809552,   26220519,   1056745,    1063269340, 58743714,   43008957,
            2109404,    1060125652, 78679922,   61894546,   4209614,    1056982988, 1046453340, 79731558,   1042451,
            6289406,    1056945223, 1045404766, 1072689164, 3146747,    1066387505, 1053798475, 1071643654, 3064,
            4187160,    1063240759, 1068500991, 1068504053, 15730681,   1072683041, 1066405881, 1062213618, 30419925,
            9433094,    1065359346, 1055923184, 46158765,   19929064,   1063264235, 1050682350, 61897605,   33569733,
            1061170148, 1044391916, 1052748876, 47211425,   4191232,    1038101483, 1060094010, 60852093,   2097150,
            6291436,    1068487720, 1052748877, 1070598141, 2099181,    3140625,    1059045436, 1065356284, 5105,
            11536375,   1065340972, 1060114427, 1065358324, 23078873,   1072686105, 1054872570, 1056969720, 34622394,
            6289411,    1049629690, 1047532540, 46164889,   14686186,   1044387833, 1038093312, 1059045436, 23082958,
            3144685,    1025509377, 1064291373, 32527282,   1050608,    1011874816, 1069539358, 41972629,   1070601205,
            986,        2093068,    1060094011, 1062211577, 4064,       7343094,    1064291374, 1053822974, 7146,
            14689247,   1068489760, 1045432323, 1063262196, 22036423,   1072688145, 1037042697, 1050677246, 29383598,
            2097152,    1016062978, 1038091272, 1065340973, 7346156,    1031761034, 1026554898, 1067441185, 12595160,
            1045398641, 1013969949, 1070589972, 17843139,   1061134422, 963622912,  1073739782, 24140718,   3128377,
            1033863288, 2101239,    1067438121, 19913753,   1046452321, 5251046,    1068489759, 37749748,   1059041352,
            9450453,    1070589973, 57682892,   1071631405, 12601283,   1071641610, 78665634,   12575756,   1071636508,
            1071646718, 1039107189, 29366246,   1071639571, 6128,       1050646624, 48251833,   1071641611, 1058787,
            1063234633, 68187018,   1069547521, 3158997,    2081841,    88123226,   1069551608, 5260231,    16769045,
            1041208423, 1069554669, 2090006,    30409717,   1051699282, 1069557731, 1073736720, 46147539,   1061141565,
            1069560793, 1072690185, 62933935,   1071633445, 3141641,    1069547523, 1046452320, 10480648,   1046534,
            1067453436, 1055893582, 23074791,   1070596098, 1065358325, 1065335868, 38813633,   1067452414, 1064311790,
            1036327,    54552474,   1063260154, 1062216679, 12576784,   70292337,   1060115446, 1060122592, 22022134,
            1048552533, 1055923186, 5237761,    34612186,   1056946243, 1052778479, 3144703,    46153662,   1064290353,
            4193270,    2046,       1053797452, 1072685085, 1050615,    1068502013, 1061141565, 7336964,    1070599161,
            1063259131, 1067437102, 17831913,   1064308730, 1058017275, 1073732638, 28325834,   1056968700, 1052775418,
            7335948,    39869353,   1050677247, 1047532538, 14682104,   51411849,   1043336193, 1042290681, 22028258,
            1055897668, 1032848385, 3142636,    30421964,   1061144629, 1047523,    1049582,    1062192183, 1067439142,
            3049,       4082,       1065340972, 1072687125, 1071650800, 1066405879, 1068489761, 5241857,    1061164023,
            1058017275, 1072687125, 10491883,   1050676223, 1049626624, 3143688,    17839059,   1040188424, 1041236998,
            6293497,    25185210,   1030749200, 1031799820, 10491882,   32532386,   1020262425, 1008720896, 14690267,
            1063241778, 1027563668, 1024417942, 1069538337, 1066390567, 1043299449, 1038055549, 1070588954, 1069540379,
            1060083805, 1052741732, 1070590995, 1071640589, 3126334,    1068477512, 1070593036, 0,          22009883,
            11521066,   1071643652, 3151854,    41944052,   29352965,   1070599163, 7351261,    63974344,   48240608,
            1071649779, 10501068,   86006683,   68173751,   1072700395, 14700475,   1034909824, 88107916,   2092043,
            1071635488, 1048547432, 1032812672, 1045513,    1071637527, 1062185040, 1045400682, 1071642630, 1071640591,
            3129397,    1056941141, 1068498947, 1070595078, 17817623,   1069529149, 1065354241, 1069549565, 34604021,
            9425955,    1062210558, 1069552627, 52438991,   23063556,   1059065852, 1069555688, 70274985,   37754852,
            1056968698, 1069558750, 1043303531, 54540225,   2094068,    1069561812, 1053794391, 70279069,   1049590,
            4189195,    1064285250, 1042255977, 1072696313, 2094087,    2083884,    1051697239, 1066404859, 1073740804,
            14672914,   1060090949, 1060113406, 1068499968, 26216438,   1070581810, 1053820929, 1065356284, 39855063,
            6282268,    1047528453, 1062212600, 54544310,   16773123,   1033890817, 1058019316, 1050649686, 28316649,
            1018119345, 1054874608, 1057993798, 40907724,   1037000852, 1050682349, 1066386485, 52449199,   1055881335,
            4191222,    1038371,    1050650707, 2070616,    3145719,    9432078,    1057993797, 22001719,   3064,
            18876407,   1064289334, 42981395,   1067453434, 28319710,   1070584870, 65012717,   1061163003, 38812613,
            4187157,    88090564,   1053822973, 1057994817, 11532289,   1027563671, 1046481920, 1063240757, 17830893,
            1043297407, 1038091265, 1068487720, 26225623,   1059032166, 1027604480, 1073734681, 34619329,   1025100,
            1046497,    5239818,    1060094012, 17809456,   998,        10487800,   1063241777, 35643409,   5101,
            15735782,   1067439143, 52429808,   1066406900, 23080916,   1070587931, 71312334,   1055920123, 1065340972,
            1044494,    1037006973, 1045432323, 1067440163, 4193280,    1049594985, 1034944524, 1069540378, 8392690,
            1061134421, 1025506325, 1071639568, 12591075,   1029183,    986691584,  1073739782, 16789460,   13618216,
            1019172002, 1051642,    1069537317, 28304398,   1034907783, 4200431,    1069539358, 40895475,   1051691115,
            6300643,    1070589975, 55582679,   1068475470, 1073734678, 1070592016, 1046451300, 12568621,   1072688146,
            1071642632, 1054843988, 32498694,   1071641613, 1070596096, 1064285251, 52434910,   1069545480, 1071648759,
            1073726514, 74466226,   1067450370, 1071650799, 9426975,    97547140,   1066404861, 1072702439, 19917835,
            1028615307, 1065357304, 3139597,    29361142,   1042252916, 1064310770, 2093066,    39853024,   1054840924,
            3141632,    1073739783, 1054847050, 1069528131, 2097151,    1070595077, 1061141566, 10473510,   1071645695,
            1066401794, 1067436082, 26208261,   1067452415, 1063258111, 1072682021, 42997730,   1062209535, 1061161981,
            5235735,    60832700,   1058015232, 1058017275, 12578824,   79717269,   1053820929, 1054872569, 17826809,
            1038058612, 1047528448, 3141620,    25170921,   1048549473, 1046505,    2096117,    1064291376, 1059040333,
            2029,       2039,       1067439144, 1069531192, 1072698354, 1069550586, 1069538336, 8378400,    1065357303,
            1063259132, 1072686104, 19918851,   1056968701, 1056966656, 1044495,    33559526,   1049625603, 1050674179,
            4192261,    47200199,   1041235978, 1044382727, 6293500,    61888422,   1033894929, 1027597312, 9441266,
            1046453342, 1013921981, 1009727679, 1073734678, 1054846030, 1033852063, 1027559586, 1072688146, 1062190142,
            1054830720, 1046441094, 1071640591, 1070582828, 2068574,    1065322600, 1071641611, 5234713,    24096827,
            11511880,   1070594055, 13628418,   47174676,   32491558,   1069547523, 23073771,   71303147,   54520832,
            1068500991, 33566674,   95431615,   76551128,   1068502012, 44058552,   1023365284, 98581424,   2093052,
            1055896647, 1040148617, 1020220579, 1047548,    1060094011, 1056932975, 1035954315, 2045,       1065339950,
            1024082,    1050640499, 1069549566, 1070586913, 19905587,   1066375257, 1065355263, 2092050,    39836690,
            9417790,    1062208512, 7339009,    58721262,   26202144,   1058014211, 13636591,   79701961,   45083648,
            1050670081, 19933149,   1032809610, 61871071,   1005526231, 26228683,   1046446196, 80753596,   1028602040,
            1065339952, 1060083805, 1030713479, 1050629272, 1066390568, 1027141,    1043301491, 1073706103, 1068489759,
            15714348,   1055889503, 24088661,   1070589973, 31449104,   1067428938, 48215089,   1072690187, 47186929,
            7323700,    73390091,   0,          63971282,   20961307,   98566116,   3149813,    1041205360, 34598912,
            1016020153, 5250025,    1052743775, 48238565,   1034900638, 8399837,    1063234636, 62925769,   1054829699,
            1073734681, 1073724473, 1041206380, 1073710183, 1072687124, 11522084,   1050647644, 19898442,   1071640591,
            24111117,   1060088908, 39828523,   1070593034, 35652597,   1069530171, 60808203,   1069546501, 48241628,
            5229609,    82837482,   1067451392, 1050648663, 14671894,   1027562650, 1066404858, 1057992777, 25162752,
            1042247812, 1065358325, 1065335867, 34607083,   1057981550, 1064311792, 1073728556, 46146517,   1073715286,
            3140608,    7330843,    1052747856, 15708222,   2095103,    15724554,   1057993796, 32491557,   1023,
            24118263,   1064288312, 49274891,   1069549567, 32511973,   1070583852, 66060272,   1065355263, 1060092989,
            2087966,    1038056572, 1060111360, 1064290355, 9432080,    1049594986, 1055918080, 1068486697, 15726592,
            1061133400, 1049625600, 1072684062, 20974577,   1073720390, 1044381696, 3139603,    28318689,   12566578,
            1043432,    8385543,    1063241780, 25154590,   1048555,    12583930,   1065340972, 37742601,   4079,
            17830894,   1068488740, 51380212,   1069552628, 1068488739, 1070587932, 1048550494, 1061163002, 1069539357,
            1073735699, 1056942160, 1052772352, 1070588951, 3142666,    1065333827, 1045431303, 1071639569, 5241856,
            1073725493, 1038089230, 1072690187, 8391671,    8376358,    1008714752, 1047556,    11539438,   17817623,
            1004480716, 1050621,    1073734680, 27257863,   1024410798, 2100215,    1072687124, 36700151,   1044340879,
            2092041,    1072688145, 1059044416, 1065320559, 1045511,    1071641613, 1063240758, 12558413,   1073739782,
            1071642633, 1068485677, 35636264,   1071643652, 1070595077, 1073731619, 59762688,   1067450371, 1069547521,
            5234713,    82843605,   1065353218, 1068500989, 10480655,   108019625,  1063257089, 1068502010, 16774149,
            1014973617, 1061159936, 2092028,    20972539,   1031756951, 1044463,    2095100,    1068489761, 1048541308,
            1048560,    1020,       1070587932, 1066373217, 4084,       1071646717, 1072686103, 10464323,   1069551607,
            1067452414, 1073736722, 29346851,   1063260155, 1063257088, 2093069,    49277952,   1058016255, 1060111361,
            4192263,    69211100,   1051722756, 1055917060, 6290434,    90191798,   1046478858, 1046473728, 7341054,
            1025466517, 1000279271, 995036391,  2092035,    1039104127, 1024403653, 1017063624, 1045506,    1052740713,
            1048529059, 1039090856, 1047553,    1067425874, 1073703039, 1062167688, 1072693248, 8370233,    26184795,
            11501670,   1071644672, 24106014,   52408372,   35628099,   1069547520, 39841792,   79680523,   60802078,
            1068498944, 55579618,   106954721,  85978104,   1066400768, 72363971,   1010773192, 111154128,  992932094,
            1035960441, 1031750827, 1007628486, 1019154652, 1046450280, 1052729486, 1025460396, 1045377209, 1057988693,
            1073708143, 1045389457, 1072647318, 1068479555, 21993552,   1064269941, 25128051,   6277166,    44021806,
            9409625,    53448783,   17816600,   67098635,   30388283,   80719914,   30405632,   90177511,   50318363,
            109040643,  41947112,   1022315690, 72347643,   1005525211, 54536143,   1039098001, 92278746,   1027551422,
            1047501918, 1055881336, 1019170982, 1049578656, 1054845008, 1073713247, 1034904719, 1072653442, 1062189122,
            17803332,   1050638457, 21987428,   1069532211, 36684840,   1066373218, 45063237,   4183076,    55566347,
            8365131,    69187622,   11527187,   74448877,   24099890,   92263430,   19920896,   1032809611, 40883224,
            1017068728, 28315630,   1046445175, 57667581,   1035948191, 36708315,   1060081763, 74451938,   1054828679,
            1057994818, 1073718350, 1031763077, 1073709166, 1062192184, 14661688,   1043301491, 18846805,   1066388526,
            29346850,   1055888481, 37727291,   1070585892, 44033034,   1067426895, 56607778,   1041433,    58720242,
            6273084,    76535816,   6287373,    1043303533, 18860072,   1029660821, 10484736,   1052743773, 31448084,
            1044345985, 14683124,   1063233613, 45085695,   1059030125, 19929064,   1073723453, 56625129,   1073715289,
            1068487718, 10471468,   1044354148, 14657605,   1069538336, 22009883,   1052745815, 30391345,   1070588954,
            32500744,   1061137482, 46124060,   1071638548, 44040182,   1069530172, 60809223,   1072689166, 1053797455,
            4180013,    1041204338, 1073739783, 1060090947, 13621278,   1052742755, 0,          1067434040, 22012943,
            1063231571, 2100218,    1073728556, 31455231,   1028164,    3149812,    7329824,    39847920,   12565557,
            2091018,    14672915,   1055897668, 23055397,   1044488,    22016006,   1061142587, 34592790,   1046535,
            29360121,   1066387506, 47179782,   1072692229, 1064291377, 1071632424, 1052748879, 1069546499, 1067438121,
            3136542,    1060090948, 1066401794, 1070585890, 8381460,    1067434042, 1064305665, 1073733659, 13627402,
            2082863,    1062208512, 4188179,    18872320,   9425956,    1060111360, 7335947,    24119286,   16768025,
            1042414,    11532292,   1068488740, 25158670,   1046511,    13632508,   1069538335, 33550339,   2034,
            1073736722, 1071637530, 1064292396, 1071648757, 1073737743, 1072687124, 1068487718, 1066405881, 1073737740,
            1043471,    1072684064, 1061161981, 1073738761, 3142666,    3137561,    1054868482, 1073739782, 5240837,
            7333907,    1049624583, 1047556,    7339008,    11529228,   1031788544, 1,          8390652,    15725574,
            988740855,  0,          2091012,    19920896,   1012865238, 1044468,    1044482,    2094090,    1036990644,
            1047540,    1046529,    3143688,    1061116049, 1013,       1,          3143685,    12548205,   1072697336,
            1072693248, 4193283,    38771784,   1069550585, 1070596096, 4193281,    66043936,   1066404860, 1069547520,
            4195327,    93318134,   1063258111, 1067450369, 5243902,    120591308,  1060110339, 1065352192, 6292478,
            1001331927, 986636560,  979296528,  0,          1021262010, 1014956267, 1006567661, 0,          1042240668,
            1043275974, 1032790219, 0,          1063219326, 1072644257, 1059012776, 0,          10456160,   27223163,
            12541061,   0,          32483391,   56592468,   38763617,   0,          55560221,   87010347,   67084348,
            0,          78638073,   118476802,  95404054,   0,          101715925,  999228653,  123725808,  0,
            1012875446, 1023353037, 993986794,  0,          1030706333, 1047477421, 1016014028, 0,          1047489669,
            1072650380, 1039088815, 0,          1065321580, 24082540,   1061116049, 0,          9411666,    49255498,
            10450035,   0,          27243574,   74429480,   33525845,   0,          46125082,   100652037,  56601654,
            0,          65007612,   1010772169, 80726038,   0,          82840542,   1031749806, 104851446,  0,
            1025466517, 1052727443, 1007628484, 0,          1039103105, 1072656504, 1026508971, 0,          1052739693,
            19893340,   1045388435, 0,          1066375257, 40870976,   1064268922, 0,          7318595,    62897188,
            9406561,    0,          22004781,   83875847,   28287048,   0,          36689942,   1023365286, 47167535,
            0,          51377150,   1040147600, 67096597,   0,          65014758,   1056929914, 85977083,   0,
            1038058613, 1073712228, 1022318750, 0,          1048547429, 16752717,   1037002891, 0,          1057988693,
            33535030,   1051688055, 0,          1068478533, 51365919,   1066372195, 0,          5226549,    68148232,
            7315535,    0,          15716387,   1034908803, 23048251,   0,          27254801,   1048544370, 37733414,
            0,          37746687,   1061131360, 53467154,   0,          48236524,   1073718351, 69200893,   0,
            1050649684, 13612093,   1035960441, 0,          1056944201, 27247659,   1046449258, 0,          1063238718,
            39834649,   1057987675, 0,          1070581810, 53470215,   1068476492, 0,          3133478,    1047500896,
            6272061,    0,          10477593,   1055892563, 17810477,   0,          17820685,   1065332807, 29348893,
            0,          25163776,   1031226,    40886286,   0,          31459315,   10471468,   52425726,   0,
            1062193204, 19911711,   1049601108, 0,          1065340973, 30400530,   1056944202, 0,          1068487718,
            39840772,   1064286271, 0,          1072684062, 1059044414, 1071629364, 0,          2090007,    1064289333,
            5229609,    0,          5237775,    1070582829, 13621279,   0,          9434119,    2085924,    20963348,
            0,          12581888,   8379419,    29355017,   0,          15730681,   14672915,   36698110,   0,
            1073735700, 19917834,   1063242800, 0,          1073736721, 26211330,   1066390569, 0,          1073737742,
            1070587931, 1070585891, 0,          1073738763, 1072686103, 1040412,    0,          1073739784, 1043474,
            5235734,    0,          1073740805, 3141646,    9432079,    0,          1047554,    5239818,    13627401,
            0,          0,          8386566,    17822723,   0,          1023,       10483714,   22020093,   0,
            1042420,    13631487,   2093067,    0,          1045492,    1044473,    3142665,    0,          1048565,
            1045496,    3143687,    0,          3062,       1047543,    3144708,    0,          1071647736, 1048567,
            4193282,    0,          1068502011, 1015,       4194304,    0,          1064307710, 1072694264, 4195327,
            0,          1061159937, 1072694265, 5243902,    0,          1054863360, 1072694268, 6292477,    0,
            972999971,  0,          0,          0,          1001320701, 0,          0,          0,          1029640408,
            0,          0,          0,          1057960115, 0,          0,          0,          12539022,   0,
            0,          0,          41907303,   0,          0,          0,          72325184,   0,          0,
            0,          102744086,  0,          0,          0,          133162989,  0,          0,          0,
            986641661,  0,          0,          0,          1010766045, 0,          0,          0,          1035940029,
            0,          0,          0,          1060064413, 0,          0,          0,          11495548,   0,
            0,          0,          36669531,   0,          0,          0,          61842489,   0,          0,
            0,          88065046,   0,          0,          0,          114288627,  0,          0,          0,
            1001331927, 0,          0,          0,          1021260988, 0,          0,          0,          1042238625,
            0,          0,          0,          1062167686, 0,          0,          0,          9404522,    0,
            0,          0,          30382159,   0,          0,          0,          52408370,   0,          0,
            0,          73387030,   0,          0,          0,          95414265,   0,          0,          0,
            1014973617, 0,          0,          0,          1031755931, 0,          0,          0,          1048538245,
            0,          0,          0,          1065320559, 0,          0,          0,          8361048,    0,
            0,          0,          25143362,   0,          0,          0,          42974251,   0,          0,
            0,          59757587,   0,          0,          0,          77589500,   0,          0,          0,
            1028615308, 0,          0,          0,          1042250874, 0,          0,          0,          1054837865,
            0,          0,          0,          1067424856, 0,          0,          0,          7318598,    0,
            0,          0,          19905588,   0,          0,          0,          33541154,   0,          0,
            0,          47176720,   0,          0,          0,          60813310,   0,          0,          0,
            1042256999, 0,          0,          0,          1051697242, 0,          0,          0,          1061136461,
            0,          0,          0,          1070576704, 0,          0,          0,          6275123,    0,
            0,          0,          15715366,   0,          0,          0,          25155609,   0,          0,
            0,          34595851,   0,          0,          0,          45085694,   0,          0,          0,
            1055897666, 0,          0,          0,          1062191161, 0,          0,          0,          1067436081,
            0,          0,          0,          1072681000, 0,          0,          0,          5232672,    0,
            0,          0,          11526167,   0,          0,          0,          16771086,   0,          0,
            0,          23064582,   0,          0,          0,          29359102,   0,          0,          0,
            1069539358, 0,          0,          0,          1071637529, 0,          0,          0,          1073735701,
            0,          0,          0,          2092048,    0,          0,          0,          4190220,    0,
            0,          0,          7336968,    0,          0,          0,          9435140,    0,          0,
            0,          12581889,   0,          0,          0,          14680061,   0,          0,          0,
            1043449,    0,          0,          0,          1044472,    0,          0,          0,          1046519,
            0,          0,          0,          1047543,    0,          0,          0,          1015,       0,
            0,          0,          1015,       0,          0,          0,          1072694264, 0,          0,
            0,          1072694266, 0,          0,          0,          0,          0,          0,          0,
            1071640590, 1072693248, 1071640590, 0,          2102258,    5252067,    3150834,    5252066,    9451474,
            12602303,   9451473,    12603325,   16802731,   21003158,   16803752,   21004176,   25204605,   31504223,
            25206646,   29408090,   36755264,   43054884,   33609537,   37810987,   48305929,   54604528,   42010392,
            45161222,   60903125,   67202746,   49360628,   53561056,   74549918,   0,          58810058,   1049599,
            1072689166, 6301665,    1073737741, 6301665,    3150834,    12603323,   3150833,    11555770,   8403919,
            19957644,   8403919,    17860492,   15756197,   27311960,   14707620,   24165215,   24159089,   32565044,
            21012341,   26270529,   30463812,   35717917,   25217870,   27324210,   34666278,   40967940,   27322168,
            28376866,   37818131,   2098174,    27325228,   4196347,    43070195,   6301664,    29428504,   6301662,
            2094091,    10507195,   4191240,    9457596,    4200431,    15762321,   5249005,    12614552,   8403918,
            18919275,   7355342,    13672312,   13658022,   19974994,   11560874,   12629860,   17864573,   17881926,
            13668231,   9487194,    19971933,   16835389,   13676397,   6343508,    18928459,   5245944,    11583326,
            7344116,    17882946,   6302685,    8439639,    6302684,    16837431,   7360446,    4247378,    6310850,
            6289412,    8418208,    8388607,    5269417,    6298603,    8425351,    7347176,    2129813,    7355342,
            5284726,    6306767,    1071682441, 8413103,    1093486,    5266357,    1066441602, 8422290,    1069594474,
            4224926,    1060152191, 7379837,    8393711,    1084302,    10491882,   3189617,    6302682,    1069586309,
            6302682,    1072739180, 4212678,    1063296896, 3163082,    1067497321, 1073075,    1057006463, 1071666109,
            10487802,   1070625700, 11537395,   1065378738, 7348197,    1064337306, 8397794,    1058041772, 5257168,
            1058047894, 4208594,    1049654185, 3167164,    1049660308, 1067971,    1040218024, 1072719787, 10492902,
            1068522423, 10493921,   1067482014, 6302681,    1061185454, 5254105,    1061192599, 1063887,    1053848490,
            14292,      1053854613, 1067469766, 1045460904, 1064320976, 1046515604, 1060131776, 1036024744, 1053837262,
            13636588,   1050696637, 13637605,   1043352525, 8397791,    1041260476, 8398813,    1032867791, 3158996,
            1030775741, 3158998,    1021333457, 1071662026, 10494940,   1068514258, 8398807,    1064325059, 4205529,
            1059079118, 3156954,    1054889918, 1071657945, 1048594381, 1069558750, 1045454780, 1060124633, 1038109646,
            1056975843, 1036018620, 1048590299, 1026576336, 1043344360, 1025533885, 1037056990, 1015042002, 1029712878,
            12591070,   1024474081, 10494935,   1016080372, 7350234,    1011891173, 6301656,    1001400314, 2109401,
            6302675,    1059804,    3156942,    1066415065, 2108378,    1063267296, 1058778,    1054881754, 1068509155,
            1049635813, 1066410984, 1042299868, 1052779500, 1036004331, 1049631733, 1030765535, 1038098421, 1022371825,
            1032851457, 1018182627, 1022368766, 1008740343, 1016072205, 1005599719, 1007686662, 995108861,  999292952,
            8399825,    981470210,  4206538,    955248644,  4205526,    12234,      2108372,    1068492821, 10207,
            10203,      10210,      1072694271, 1060120552, 1064311790, 1058021359, 5251046,    1045438448, 1045434366,
            1041242107, 12600261,   1030757369, 1027604494, 1024461831, 23100308,   1015026690, 1009776669, 1007682579,
            34648930,   993004547,  991947819,  991951902,  46194487,   969934848,  974119992,  940567552,  56691472,
            13252,      1067444248, 1065344034, 1070590995, 11218,      1072693248, 1071641611, 0,          9189,
            4201449,    2102259,    5253089,    1054873590, 11549645,   8400855,    11554748,   1035995142, 24146842,
            17850286,   18907026,   1019214870, 39892829,   29398906,   25207665,   1001386020, 53538599,   40946508,
            30457686,   982509617,  67183351,   51443491,   35707710,   910152704,  1069542420, 61939452,   1073738764,
            1064294436, 2046,       1068490781, 1051641,    1070593036, 5252067,    1072691208, 4205534,    2101237,
            12602303,   2103280,    8409022,    8399836,    22052753,   8402896,    11562913,   16798647,   30452584,
            15755175,   13667209,   31496058,   37801799,   22057857,   14720887,   47240001,   46199591,   28357475,
            15774568,   60885775,   1071640592, 33607498,   3143684,    74529504,   1050619,    38857521,   2102259,
            1066392607, 5253087,    1072687125, 3156958,    1071641609, 10506172,   1047555,    3163079,    2102257,
            15759256,   3151853,    3170227,    8401875,    19961724,   6306766,    1077155,    17851304,   23113575,
            10510255,   1072725911, 26253179,   25216851,   12615572,   1070631822, 34651991,   1045513,    14718847,
            6293498,    42001207,   2101238,    14723951,   3151853,    50397975,   4205534,    15776608,   1059807,
            1069540377, 6310850,    3141645,    1071659986, 1073739782, 7366570,    2099196,    1067469767, 3151854,
            7372694,    3153897,    1062229950, 7355342,    7376775,    3160018,    1056989111, 13657002,   6332283,
            3167165,    1051748274, 17861513,   5241856,    2123691,    7344111,    21014385,   3150831,    30621,
            3152872,    24165213,   2108382,    1071679378, 1072703459, 27317065,   16332,      1068536713, 1065365470,
            1043473,    1071666109, 8386561,    1058027482, 1048576,    1068524465, 5246963,    1049639896, 3152875,
            1065381799, 2105318,    1041252310, 5258192,    1061190560, 1072706521, 1032864726, 7363509,    7343093,
            1069564876, 7345123,    7369631,    4201450,    1065373634, 3152868,    7374734,    10209,      1060133818,
            1070605287, 6330241,    1068512216, 1053844405, 1059070954, 5285749,    1062223825, 1048603568, 1048585197,
            6288391,    1055934411, 9439219,    1037050865, 4197368,    1049644999, 5247979,    1025516533, 2105319,
            1042307012, 1056741,    1013982201, 1062869,    7345129,    1069558752, 3152855,    1072712644, 3152870,
            1061172188, 1056737,    1070619575, 1071653861, 1053834201, 1067458540, 1066429356, 1062217700, 1045446615,
            1052776438, 1063286692, 1052781540, 1037059030, 1039141888, 1058045853, 1043345380, 1028671446, 1024460810,
            9438202,    1033909222, 8392675,    1009778708, 5247983,    1023423464, 5248995,    973072388,  2105317,
            5248989,    1056742,    1060097074, 1071656924, 2105314,    1064313832, 1066393628, 1065368532, 1068507113,
            1053828075, 1073739783, 1059079118, 1055924208, 1042293743, 7346156,    1052789705, 1043340279, 1031807987,
            18891716,   1045451717, 1030756350, 1020273655, 33585045,   1038113731, 1018171396, 1008739324, 47228775,
            9440235,    996148225,  4200404,    60871485,   5248999,    8146,       2104284,    1063244841, 1056741,
            8159,       8166,       1068492823, 1067460580, 1066408942, 1060117489, 1,          1058024420, 1050678268,
            1046483963, 7348197,    1048588260, 1033896969, 1031801861, 15747011,   1038102501, 1019214870, 1017119759,
            24144799,   1028666343, 1003484195, 1002438680, 33592189,   1018180585, 986703919,  959438848,  43037533,
            6296540,    1057998902, 1055899708, 1067441184, 3152863,    1065344032, 1063245863, 1071640591, 8166,
            1072690187, 1070590994, 0,          1062215660, 7345136,    3147771,    5252066,    1049631731, 20988869,
            12594137,   10503111,   1037047802, 37780368,   26237868,   14704557,   1024462849, 54570845,   39882622,
            19954581,   1005586434, 70312749,   54574930,   24155006,   985661440,  1061146670, 68217640,   1071638550,
            7117,       1067443225, 1060096050, 1073739784, 8152,       1047556,    1066392608, 4087,       8167,
            7347176,    1071641612, 1057764,    1058019317, 17844163,   3149812,    3161040,    1042286595, 29389722,
            11547604,   4214718,    1026555920, 40934258,   19946417,   5268397,    1010825245, 52478797,   29392782,
            6322078,    995093545,  1065343012, 38839149,   3141642,    931119104,  1069542419, 47236941,   1049599,
            1053801537, 1023,       1065341992, 1072698355, 1062196267, 6300643,    1069541399, 1071653863, 1069541398,
            12601284,   1072691207, 1069559771, 2098175,    19949478,   2103280,    1067466704, 13641692,   27297673,
            7353301,    1064324038, 28336043,   33596269,   12604346,   1062229949, 46176118,   1069540379, 17854369,
            6291453,    61918020,   1072690188, 22054793,   2100215,    78707477,   3066,       27304818,   1071650801,
            1057997879, 3154915,    1071636509, 1066409964, 1064294436, 6307787,    1072689167, 1061169127, 1071640591,
            9459637,    1072693248, 1055928290, 3148791,    12611489,   1054702,    1049637854, 11546582,   15762318,
            2109402,    1044397019, 23092142,   1043472,    4212679,    5244911,    34637702,   1047555,    5266357,
            2101231,    46182239,   4085,       6319013,    1070602224, 57726779,   9189,       6324118,    1062214641,
            1063243821, 14293,      3140624,    1052777459, 1067442204, 1072711623, 2095109,    1044388853, 1072690186,
            1071667129, 3065,       1034951671, 3150834,    1070622637, 1071651821, 1026564089, 9450452,    4192260,
            1070607329, 2100192,    16799669,   1050619,    1068513237, 1053671,    23099287,   1072698354, 1066420171,
            1069553647, 30447483,   1068507113, 1063277505, 1056969719, 36746080,   1065364449, 1061183416, 1045434367,
            1068488739, 1061173209, 7336960,    1032849415, 1070590995, 1056980946, 3146746,    1020265487, 1073740803,
            1052789708, 4084,       989848579,  2103279,    5243894,    1069554670, 1049602131, 5256151,    2101235,
            1064313833, 1059044413, 8408000,    1070602224, 1059072996, 1068487718, 11559851,   1064311790, 1052782560,
            5237771,    13663127,   1056972781, 1047541725, 17831913,   16813956,   1049633771, 1041252313, 33571776,
            1041431,    1042294763, 7340015,    50360212,   1045514,    1034955754, 3148783,    67149672,   2044,
            4196327,    6127,       1054848069, 7149,       2102251,    1066407920, 1062193202, 11229,      1069553647,
            1058020338, 1069539358, 1072709582, 1059067892, 1048583156, 4192261,    1072713664, 1049630713, 1040194550,
            13638632,   1071669171, 1038095358, 1030758392, 25182150,   1070624679, 1027608579, 1021321210, 37774242,
            5238792,    1010828289, 3147742,    50367359,   3145727,    4057,       2101219,    1060095031, 4087,
            6115,       7147,       1065341991, 1070603246, 1068506095, 1063262195, 1070589974, 1067460581, 1054872570,
            1050678267, 3144705,    1063268317, 1041238021, 1039141891, 9444328,    1059077077, 1027604496, 1026556939,
            16791501,   1054884815, 1013970971, 1015021587, 25188274,   1050693577, 1000337446, 979360768,  33584023,
            8388600,    1046454361, 1044356189, 1065341994, 4196340,    1056946242, 1053799496, 1068490780, 5106,
            1067438123, 1063241778, 1071640590, 1067457519, 5236750,    1073733658, 0,          1061167085, 18880490,
            10486780,   4201450,    1053828076, 37766077,   25177045,   8401878,    1046489067, 56653708,   41966506,
            11552707,   1039150058, 75540316,   58754942,   15752111,   1031811050, 1051701324, 75544402,   1071636507,
            5243879,    1060095031, 1050651726, 1071639569, 3149801,    1069537314, 1057996859, 1071642630, 6125,
            5238792,    1066390568, 1071647739, 1064310770, 15734761,   1073736723, 1071651822, 1053825014, 29376451,
            8391672,    1071654881, 1044386811, 44067739,   19934167,   1072707540, 1032851456, 58758003,   31477684,
            1072711624, 1018169345, 1056947262, 44070800,   3141643,    1003486208, 1064292396, 56662893,   1046533,
            3029,       1070588954, 1056947263, 1070598143, 5085,       4192259,    1063242799, 1067454457, 7145,
            11541480,   1068489759, 1065359347, 1061165044, 20986826,   1073737740, 1062215660, 1047531519, 31481770,
            6295541,    1059071974, 1033896970, 41975691,   13642715,   1055928289, 1021312022, 1063242800, 20989888,
            4193274,    1007678497, 1067441186, 29385636,   1050617,    953137152,  1071639570, 37782409,   1070599161,
            1041208421, 1049599,    1064291376, 1064308728, 1051700302, 7347177,    1067440163, 1058018296, 1062192183,
            12597202,   1070589973, 1051726840, 1072684062, 18894778,   1073739782, 1045436409, 11535358,   25192355,
            2101236,    1038096377, 28322772,   1068488739, 6301664,    3145705,    47210405,   1070589975, 10501069,
            1051629,    66097012,   1071641610, 13652921,   1070601203, 84984644,   1072695292, 17852325,   1061164024,
            1047503958, 1055724,    1071635488, 1050677246, 1055897666, 3157980,    1071638550, 1041238020, 1065340973,
            5259212,    1071641612, 1031799819, 1073735702, 7361468,    1070596097, 1007674370, 9439225,    1042452,
            1071649780, 1037009015, 23079894,   1072690187, 1071652840, 1050646623, 36722607,   1071643651, 1071656923,
            1063235654, 51412871,   1069550586, 1072709582, 3132458,    66103135,   1068505072, 1072713666, 18868232,
            1053799495, 1067459559, 3139598,    35657700,   1061144629, 1065365469, 2094088,    54542266,   1067440164,
            1064319956, 1073740802, 74476431,   1073737743, 4191235,    1069550588, 1044354149, 7343094,    1049599,
            1066406902, 1054845008, 16788441,   1070599164, 1063263216, 1065335867, 26233786,   1066405880, 1060119529,
            3134499,    36728730,   1061164021, 1056975844, 14674949,   47222651,   1056971762, 1053832158, 28317671,
            1060095032, 1051729904, 6289403,    43006916,   1065341993, 1046488045, 3145722,    57696160,   1069540378,
            4194289,    3065,       1051699282, 1073738761, 1051635,    1067454456, 1059043393, 4198388,    1070600182,
            1061164024, 1067437103, 9447389,    1062211576, 1054872568, 2088987,    15745990,   1054871547, 1048582136,
            10482691,   22043567,   1046482942, 1041242105, 19929066,   27292567,   1038093314, 1034951673, 31470541,
            1067439145, 1025507329, 3144679,    41964465,   1069539357, 992,        1050603,    1057995840, 1070590993,
            4071,       5104,       1063241778, 1072692227, 1070602224, 1065358325, 1068488740, 5108,       1059066872,
            1055920123, 1042452,    2106340,    1047529473, 1046480897, 6290433,    4208596,    1035994122, 1035994119,
            11539437,   6309828,    1025506324, 1026555918, 18885592,   8412084,    1013969950, 998234112,  26231746,
            1041432,    1033861248, 1030714499, 1065339949, 1073737743, 1047498855, 1043303531, 1067440163, 1072691207,
            1062186060, 1056941139, 1069540376, 1070598142, 4180014,    1070579769, 1072690188, 1068504053, 20964361,
            11525146,   0,          1067458539, 39852002,   27263991,   3150833,    1066413026, 60834742,   45099983,
            6300643,    1064317913, 81818503,   65034149,   9450453,    1063272400, 1041206382, 83919738,   1072686106,
            5238789,    1052745816, 1039109231, 1071639571, 3143681,    1064286272, 1049600090, 1070593037, 1072695294,
            3133478,    1060090950, 1070595078, 1068502010, 16772103,   1070581807, 1068500990, 1064309751, 32511973,
            9430037,    1067454455, 1059067892, 49299391,   20973559,   1067457519, 1053826033, 66086807,   35661781,
            1066410983, 1049633774, 1047501915, 50351026,   3141638,    1044391916, 1056944201, 66089869,   1046532,
            5240817,    1066386485, 1047502939, 1070596098, 2098162,    2087967,    1054847050, 1066402816, 4085,
            12578820,   1063239736, 1063259134, 1066405879, 24123368,   1071633446, 1059065852, 1059065849, 36714440,
            6286352,    1054871547, 1050677245, 50354088,   15730679,   1050678266, 1042287616, 1054847049, 26223580,
            2095089,    1031799809, 1061142586, 36717503,   1050611,    1020263424, 1068486698, 47210402,   1071648759,
            1047518,    1041431,    1055896647, 1064308730, 2019,       8386562,    1061142585, 1056967678, 6123,
            16783339,   1066389547, 1049626626, 1064309748, 25178067,   1071636508, 1042285575, 1053822972, 33573817,
            3142667,    1024452610, 1042285574, 1062192183, 8391671,    1025464477, 1030750223, 1065340971, 15736803,
            1041199234, 1019213849, 1069539358, 22034381,   1057983591, 975157248,  1073736720, 29380536,   2074697,
            1026518157, 3145728,    1064290354, 20957224,   1041204340, 7345135,    1066390568, 40888322,   1054841946,
            12593117,   1068490782, 60823517,   1069529149, 17841100,   1071639570, 82853811,   12572701,   1068488740,
            1073739782, 1033859206, 30409719,   1069539355, 2100217,    1047496815, 50343884,   1070590994, 5250026,
            1061133400, 71326623,   1071642633, 7351260,    2077758,    93358960,   1071646719, 10501069,   16764962,
            1034911865, 1072698356, 1072685085, 32500738,   1046451299, 8169,       1071638551, 49288162,   1057991756,
            1059806,    1071640592, 67123135,   1070580788, 2092048,    1070594057, 1042253935, 10477592,   1073738764,
            1068498946, 1052744796, 24118263,   1071642631, 1068502010, 1063235656, 40905682,   1068498947, 1067456499,
            1033267,    57693099,   1065355262, 1067458539, 12572700,   74480515,   1063260153, 1066412003, 25161730,
            1043305573, 1061165045, 4189191,    37753831,   1052747858, 1059068912, 2094084,    51392458,   1061141567,
            3143675,    1073740803, 1050648664, 1071632426, 1049595,    1068498945, 1057992777, 8382483,    1071646716,
            1065355263, 1065336889, 18876407,   1065356285, 1061161981, 1073729576, 30418904,   1060113406, 1056968700,
            8381462,    44058552,   1053821951, 1052775418, 16774145,   56650648,   1048578049, 1048581113, 26218476,
            1051699281, 1040188416, 3141616,    35661782,   1057994817, 1046502,    2097138,    1059043392, 1064290354,
            2027,       3061,       1063240757, 1071635489, 1071650801, 1068503032, 1068486697, 5238797,    1063261175,
            1061161980, 1072685085, 12584951,   1053822974, 1052772352, 4189199,    20980703,   1044382725, 1045431301,
            9436161,    29375430,   1035993101, 1038091274, 13635570,   38819757,   1027602453, 1018159104, 19931106,
            1060092989, 1020218537, 1017072810, 1067439145, 1063242801, 1039100044, 1032807568, 1068489761, 1067440164,
            1056932974, 1049591925, 1070588954, 1071637527, 2073678,    1067424856, 1071639570, 2094088,    23053355,
            11515961,   1073738761, 5245944,    45081603,   31447062,   0,          10493926,   67114970,   50332657,
            2100215,    14692308,   90194862,   72362952,   4200431,    19940291,   1029661842, 93344670,   1043473,
            1068487720, 1044348025, 1026516113, 1073737742, 1069538336, 1060082783, 1040153723, 1071641610, 1069541399,
            2076740,    1053790307, 1070594055, 1070592014, 18861093,   1068476491, 1067450372, 1071643652, 36694018,
            9421873,    1065354240, 1071647737, 55579615,   25157651,   1064307710, 1072699374, 74464185,   40895475,
            1062211579, 1057763,    1038056570, 57681872,   2094072,    2110424,    1049596005, 75515821,   2097145,
            2091026,    1062184016, 1037009016, 1072696315, 1044494,    1031225,    1047499877, 1067453436, 1072690185,
            14668831,   1057989714, 1063259134, 1070595077, 29355010,   1069529150, 1058014209, 1066402816, 44045284,
            7327784,    1052771332, 1064307708, 58733509,   18868240,   1042280449, 1062212599, 1046451299, 31458293,
            1011822788, 1060116467, 1054843986, 44048345,   1032801446, 1058021358, 1064286273, 57687996,   1053780104,
            4190203,    1034286,    1046452319, 1016936,    2096123,    10477593,   1053796432, 23045190,   2044,
            20968449,   1062189121, 46123042,   1068502012, 31462378,   1069533233, 69201916,   1063259133, 43002832,
            4184095,    92279764,   1056967678, 1054846028, 13626380,   1022315688, 1050675200, 1061141567, 20973559,
            1039099022, 1044382720, 1067436081, 30415841,   1056930932, 1035993088, 1073731619, 39859147,   1021017,
            1044453,    6285331,    1055896646, 18853949,   1048552,    13629441,   1061142587, 37736478,   4078,
            19927023,   1065339951, 57667582,   1067455476, 27272156,   1070585891, 76550108,   1059065850, 1063241781,
            2090006,    1031761036, 1049626625, 1066389547, 6288392,    1045396599, 1040188425, 1069538338, 11536377,
            1060082785, 1031797777, 1072686103, 16783338,   1073719371, 998227968,  2093068,    23078875,   14662707,
            1011826871, 5241856,    1066389548, 30398490,   1029658779, 8392693,    1067440165, 46134271,   1047491709,
            11541480,   1069539358, 60821475,   1066374238, 1071636509, 1070589974, 1042253936, 12563517,   1071637528,
            1072689166, 1052743775, 33544216,   1070590994, 1073740805, 1063233614, 55575535,   1070593036, 1050620,
            1073723452, 78654404,   1070594054, 3150835,    11521065,   102782871,  1069547520, 5250026,    23060501,
            1021270174, 1069550586, 2091026,    34599936,   1037004933, 1070601205, 1043471,    45091818,   1051691116,
            2092037,    1072690188, 1051698260, 1067425874, 1046531,    1071642633, 1059041351, 10468405,   1072692227,
            1069546501, 1066384442, 28302357,   1068498946, 1066401794, 1073728557, 46138354,   1065354241, 1065355263,
            7329823,    65021900,   1062208513, 1063259132, 14673936,   84955046,   1058014209, 1062211578, 23066624,
            1031763077, 1053819904, 2092024,    30411760,   1043302512, 1045484,    2095096,    1061143608, 1055890523,
            1007,       2042,       1065339951, 1068478533, 5107,       1070599163, 1069536295, 8374316,    1067454455,
            1065356285, 1072684062, 22012945,   1060114428, 1060111360, 3139604,    35652596,   1053820929, 1054868482,
            7335946,    51389396,   1046478855, 1049625606, 11533312,   67126196,   1040186381, 1037035520, 15730679,
            1041206380, 1007624402, 1002381523, 1071636508, 1050647643, 1029651634, 1022311605, 1071637527, 1060089930,
            1051679889, 1043290263, 1072688147, 1069531191, 1014895,    1064268920, 1072689166, 5231652,    25140299,
            11506775,   1073738762, 15722510,   49267748,   34583605,   1073740805, 26215414,   75492347,   57661455,
            0,          37756893,   100668368,  81788904,   1050621,    49297347,   1017068726, 104867776,  2093055,
            1051699283, 1035950234, 1013924021, 1047551,    1057993797, 1054830718, 1030707355, 1023,       1064288312,
            1018977,    1047490690, 1071646719, 1070583850, 20950081,   1065322599, 1068500991, 3137563,    41928736,
            9413707,    1065354240, 10481674,   63959037,   28295214,   1063257089, 15730680,   84939736,   47176718,
            1059059712, 24124390,   1027562650, 67108845,   999228651,  31468499,   1042247811, 87039947,   1023354058,
            1061142585, 1057982571, 1025466518, 1048527017, 1064291376, 1073717330, 1039103105, 1072652423, 1067439143,
            16758840,   1052739692, 25133156,   1070587933, 34591772,   1066376278, 50307136,   1073736722, 51377150,
            7320639,    77579290,   3143687,    68161504,   23054375,   103803891,  6293499,    1037006974, 37741580,
            1010772170, 10490862,   1049594987, 53477361,   1031749806, 13639650,   1061133400, 68164565,   1052728465,
            1071635488, 1073721411, 1037009016, 1073706101, 1071637530, 12567598,   1047498855, 20942935,   1071638549,
            26205207,   1057988695, 42970168,   1070592015, 39842815,   1068478533, 64998425,   1070594057, 52431847,
            5227571,    87026680,   1070595075, 1046452322, 16765983,   1022315689, 1069549565, 1055892563, 28305418,
            1039098002, 1070600184, 1064285252, 38798325,   1055880314, 1070602226, 1073726516, 51386335,   1073712226,
            3139589,    9425956,    1048551514, 16753738,   2094084,    18867218,   1054846030, 34584624,   1047555,
            28308480,   1062189121, 53465110,   1070596098, 37751789,   1069532212, 71299068,   1066401793, 1056945222,
            3134502,    1033858184, 1063257089, 1062191163, 11526167,   1046446198, 1060111361, 1067436080, 18870280,
            1060081763, 1055917056, 1073730597, 26215416,   1073717327, 1051722752, 5234713,    34608104,   13612092,
            1043435,    11529229,   1060094012, 27248679,   1047533,    17823744,   1063241780, 41933843,   3056,
            23071731,   1067438123, 55570430,   1070601205, 1066389546, 1071634466, 1044353128, 1064308729, 1068488739,
            1041433,    1054841945, 1056967678, 1070587933, 5237775,    1064283211, 1049625604, 1072687126, 9435141,
            1073723452, 1043333130, 1044495,    13632507,   10471469,   1020251136, 4191240,    17829874,   20960286,
            996085986,  6290432,    1070586910, 31450126,   1018114242, 8390650,    1071637530, 41940991,   1040141474,
            1043470,    1071638549, 1055896647, 1063218304, 1045515,    1072688145, 1062190141, 12553309,   1073738761,
            1072690188, 1068483635, 36679736,   1072691207, 1073739783, 1036329,    62903312,   1071643652, 1047555,
            7329823,    88080358,   1069547523, 1023,       13624340,   114305979,  1068498945, 1050619,    20966409,
            1007628484, 1067451392, 2091008,    27261951,   1026509992, 1044465,    2094079,    1066390567, 1045390476,
            1047538,    1048575,    1069538337, 1064271983, 3061,       1072694271, 1072685083, 10460241,   1071648759,
            1069549567, 1042453,    31438897,   1066404858, 1067451392, 4189200,    52419599,   1062210558, 1064305665,
            7335946,    74448875,   1058014210, 1062208514, 10483716,   95429574,   1052770310, 1055912960, 13631487,
            1019170981, 993981691,  987691259,  1043463,    1034905742, 1020204248, 1011815642, 1044485,    1050639479,
            1046426804, 1035941049, 1046531,    1066374239, 1072649360, 1061114008, 1047553,    8367173,    26179691,
            11497590,   1047552,    25150506,   54500420,   37720146,   0,          42983437,   82821147,   63942701,
            1023,       60817391,   112192497,  90166279,   0,          77602768,   1005525210, 117439456,  0,
            1030713479, 1027552444, 1000283352, 0,          1043300468, 1050628253, 1021260988, 0,          1054839905,
            1073704062, 1042239648, 0,          1067427918, 23038046,   1063217283, 0,          6274105,    47163452,
            10454118,   0,          19910691,   71288858,   31432776,   0,          33548299,   95415286,   53460009,
            0,          47185907,   1017067706, 76535816,   0,          59774938,   1034899616, 98565096,   0,
            1042255977, 1053780102, 1013924021, 0,          1051696219, 1073709163, 1030706333, 0,          1060088908,
            18847824,   1047489670, 0,          1069530172, 38777908,   1065320558, 0,          4181036,    58706967,
            8362070,    0,          13622299,   79686650,   26192957,   0,          24112137,   1027562649, 44024867,
            0,          32506871,   1043296388, 61856777,   0,          42996708,   1057981550, 80739310,   0,
            1053798475, 1073715289, 1026516114, 0,          1059043393, 15707203,   1040152703, 0,          1065337910,
            31440940,   1053788268, 0,          1070583851, 47174677,   1067423833, 0,          2087967,    63959037,
            7318598,    0,          8382483,    1039106168, 20954162,   0,          14676999,   1050644584, 34590749,
            0,          19923962,   1062181975, 49275912,   0,          26218477,   1073720390, 62913523,   0,
            1065339949, 12565557,   1040156783, 0,          1067439143, 24103971,   1049598049, 0,          1069538336,
            36691985,   1059038290, 0,          1071637529, 48231422,   1069527108, 0,          1073736722, 1050648663,
            5226549,    0,          3141643,    1057991755, 15715366,   0,          5240836,    1066383423, 26205206,
            0,          6292477,    1033267,    36695046,   0,          9440246,    9424934,    47184887,   0,
            1042447,    17816601,   1052748876, 0,          1044493,    26208268,   1059043394, 0,          1045514,
            34600959,   1065336888, 0,          1072691208, 1061143607, 1071631406, 0,          1071643653, 1065339951,
            4183076,    0,          1070595075, 1070584871, 10477593,   0,          1068498946, 1039391,    17819663,
            0,          1067450368, 6284311,    24114180,   0,          1067452415, 10480655,   31457274,   0,
            1042417,    15725575,   1065340970, 0,          1046514,    20970495,   1068488740, 0,          1011,
            1072686103, 1070586910, 0,          4086,       1073735699, 1073734680, 0,          1068503033, 1043471,
            3139603,    0,          1064307708, 2093068,    6287373,    0,          1060111360, 3142664,    9434119,
            0,          1055917060, 4192261,    12580866,   0,          1043325952, 6290434,    14681084,   0,
            980346125,  6292479,    1043464,    0,          1006568682, 1044470,    1044486,    0,          1032791238,
            1046518,    1045508,    0,          1060062370, 1048566,    1046530,    0,          12544126,   2039,
            1047553,    0,          40863832,   1072696313, 0,          0,          69184560,   1070599162, 1023,
            0,          97506310,   1068500989, 1023,       0,          126877660,  1066402816, 0,          0,
            993986794,  0,          0,          0,          1016014027, 0,          0,          0,          1039089837,
            0,          0,          0,          1062165645, 0,          0,          0,          11499630,   0,
            0,          0,          34576461,   0,          0,          0,          58701867,   0,          0,
            0,          83875848,   0,          0,          0,          108002276,  0,          0,          0,
            1007628486, 0,          0,          0,          1025459373, 0,          0,          0,          1044339859,
            0,          0,          0,          1064268921, 0,          0,          0,          9407582,    0,
            0,          0,          29337666,   0,          0,          0,          49266726,   0,          0,
            0,          69196809,   0,          0,          0,          89127915,   0,          0,          0,
            1020220579, 0,          0,          0,          1035954318, 0,          0,          0,          1050638457,
            0,          0,          0,          1066372196, 0,          0,          0,          7315534,    0,
            0,          0,          23049271,   0,          0,          0,          39832608,   0,          0,
            0,          55566345,   0,          0,          0,          71302129,   0,          0,          0,
            1033861248, 0,          0,          0,          1045399664, 0,          0,          0,          1056937055,
            0,          0,          0,          1068475470, 0,          0,          0,          6272061,    0,
            0,          0,          17810476,   0,          0,          0,          30398490,   0,          0,
            0,          42985479,   0,          0,          0,          54524917,   0,          0,          0,
            1046453341, 0,          0,          0,          1054845009, 0,          0,          0,          1062188101,
            0,          0,          0,          1070578745, 0,          0,          0,          5228588,    0,
            0,          0,          13620256,   0,          0,          0,          22011923,   0,          0,
            0,          30404613,   0,          0,          0,          38797304,   0,          0,          0,
            1059045435, 0,          0,          0,          1063241779, 0,          0,          0,          1068486699,
            0,          0,          0,          1072683043, 0,          0,          0,          3137563,    0,
            0,          0,          8382483,    0,          0,          0,          13627403,   0,          0,
            0,          17822723,   0,          0,          0,          23068667,   0,          0,          0,
            1071637529, 0,          0,          0,          1072687125, 0,          0,          0,          1073736721,
            0,          0,          0,          1044493,    0,          0,          0,          2094090,    0,
            0,          0,          3143686,    0,          0,          0,          5241859,    0,          0,
            0,          6290433,    0,          0,          0,          7341054,    0,          0,          0,
            1042423,    0,          0,          0,          1045494,    0,          0,          0,          1047542,
            0,          0,          0,          1015,       0,          0,          0,          3064,       0,
            0,          0,          1071647738, 0,          0,          0,          1069550588, 0,          0,
            0,          1067452414, 0,          0,          0,          1065352192, 0,          0,          0
        },
    },

};

#ifdef __cplusplus
#if __cplusplus
}
#endif
#endif /* End of #ifdef __cplusplus */

#endif /* __IMX415_CMOS_EX_H_ */
